Ether โฮม L2 ในสถานะการพิสูจน์การประพฤติผิด

1. บทนำ

1.1. ทิศทางอนาคตของ Optimistic Rollup

ในเดือนกันยายน 2024 วิทาลิค เน้น ความจำเป็นของมาตรฐาน Rollup ที่ได้รับการปรับปรุงและกล่าวว่า:

ฉันให้ความสำคัญกับสิ่งนี้มากเลย ตั้งแต่ปีหน้าเป็นต้นไป ฉันจะเผยแพร่เฉพาะในบล็อกส์ การพูดโต้ตอบในงาน และอื่น ๆ เท่านั้นที่เกี่ยวข้องกับ L2 ที่ผ่านเข้าสู่ระยะที่ 1 ขึ้นไปแล้ว บางทีอาจจะมีระยะเวลาที่ยืดหยุ่นสั้น ๆ สำหรับโปรเจกต์ใหม่ที่น่าสนใจ

ไม่ว่าฉันจะลงทุนหรือไม่ หรือไม่ว่าคุณจะเป็นเพื่อนของฉัน ฉันต้องไปถึงขั้นตอนแรก ไม่งั้นก็ไม่ต้องเสนอ

ระบบ "ขั้น" ของ Rollup เป็นเฟรมเวิร์กที่ใช้ประเมินระดับความปลอดภัยของมันโดยรวม ตั้งแต่ขั้นที่ 0 ถึงขั้นที่ 2 ใน Rollup แนวหลักปัจจุบัน มีเพียง Arbitrum และ Optimism เท่านั้นที่ได้รับขั้นที่ 1 ส่วน Rollup แบบ Optimistic ส่วนใหญ่ยังคงอยู่ที่ขั้นที่ 0 ในปัจจุบัน

ในกรณีนี้ มีปัญหาบางประการที่เกิดขึ้น:

  • ตั้งแต่ Optimistic Rollup ถูกเปิดตัวมา 3 ปีแล้ว ทำไมยังไม่มีโปรเจกต์ใดที่ไปถึงขั้นตอน 2 สูงสุด?
  • เมื่อไหร่จึงจะได้รับคาดหวัง Optimistic Rollup ขั้นที่ 2?

บทความนี้旨ที่จะตอบคำถามเหล่านี้โดยการวิเคราะห์ fraud proof และ mechanism ที่ท้าทายของ Optimistic Rollup และสำรวจว่าโครงการแต่ละโครงการทำงานอย่างหนักเพื่อให้สำเร็จในขั้นตอนที่ 2 อีกทั้งยังมองเห็นของอนาคตของ Optimistic Rollup และระบบ fraud proof ด้วย

1.2. การเปรียบเทียบ Optimistic Rollup กับ ZK Rollup

ETH เป็นที่ทราบกันดีว่าช้าและสูง นักวิจัยและนักพัฒนาในชุมชน ETH ได้ทํางานอย่างหนักเพื่อแก้ปัญหานี้ หลังจากสํารวจโซลูชันเช่นการแบ่งส่วน (sharding) และพลาสมาในที่สุดชุมชนก็ตัดสินว่า rollups เป็นเส้นทางหลักในการปรับขยาย เป็นผลให้ rollups เช่น Arbitrum, Optimism และ zkSync ได้ผุดขึ้น จากข้อมูลของ L2Beat ปัจจุบันมีการยกเลิกการดําเนินงานประมาณ 40 รายการและโซลูชันอื่น ๆ เช่น Validium และ Optimium ได้นํา alt-DA มาใช้เพื่อความสามารถในการปรับขนาดที่มากขึ้นรวมประมาณ 41 รายการ นอกจากนี้ คาดว่าจะมีเครือข่าย Rollup ใหม่ประมาณ 80 เครือข่าย

(สถานะ L2 ปัจจุบัน | ที่มา:L2Beat)

ความหมายหลักของ Rollup คือการดำเนินการซื้อขายต่างๆ ใน off-chain เพียงแค่ส่งข้อมูลซื้อขายและสถานะของผลลัพธ์ไปยังรากสถานะของ ETH โดยผู้ใช้งานสามารถฝากเงินในสัญญาบริดจ์ที่เฉพาะเจาะจงบน ETH และโอนเงินไปยัง Rollup ภายในและดำเนินการซื้อขายใน Rollup ได้ เนื่องจากข้อมูลการซื้อขายจะถูกส่งไปยัง ETH และไม่สามารถเปลี่ยนแปลงได้หลังจากยืนยันโดยไม่ทำลายความปลอดภัยของ ETH ดังนั้นคนเชื่อว่า Rollup ได้รับ "ความปลอดภัยของ ETH"

แต่คำถามคือจริงหรือไม่? ถ้าผู้เสนอข้อเสนอที่จัดการธุรกรรมภายใน Rollup เป็นผู้มีชั่วจริง? ผู้เสนอข้อเสนอชั่วจริงอาจแก้ไขยอดเงินคงเหลือของ Alice โดยการโอนเงินไปยังบัญชีของตนเองและถอนเงินไปยังอีเธอร์เรียมเพื่อขโมยเงินของ Alice อย่างมีประสิทธิภาพ

เพื่อป้องกันสถานการณ์เช่นนี้ จำเป็นต้องมีกลไกความปลอดภัยเพิ่มเติมเมื่อถอนเงินจาก Rollup เข้าสู่ Etherum Blockchain โดยการให้พิสูจน์กับสัญญาตั้งต้นของ Ethereum Blockchain ซึ่งพิสูจน์ว่าธุรกรรมการถอนถูกดำเนินการอย่างถูกต้องและถูกนำเข้าสู่ L2 Chain ธุรกรรมถอนเงินจึงสมบูรณ์

วิธีที่ง่ายที่สุดและวิธีที่ทุก rollup ทําคือการเปรียบเทียบแฮชของธุรกรรมการถอนกับรากสถานะของ rollup เพื่อพิสูจน์ว่าธุรกรรมการถอนรวมอยู่ในสถานะของ rollup อย่างถูกต้อง สิ่งนี้ต้องการให้ธุรกรรมการถอนเงินถูกส่งไปยังสัญญาบริดจ์ของ Ethereum พร้อมกับรากของรัฐ ผู้ใช้ส่งธุรกรรมการถอนเงินในขณะที่ผู้ตรวจสอบความถูกต้องคํานวณและส่งรากสถานะ

แต่ถ้าผู้ตรวจสอบความถูกต้องของรากสถานะที่ส่งมอบมีเจตนาไม่ดี และส่งมอบรากสถานะที่ผิด อาจเกิดความเสี่ยงต่อความปลอดภัยของเงินของผู้ใช้ โดยเพื่อปล่อยปล่อยความเสี่ยงนี้ ได้提出กลไกหลัก 2 แบบที่ทำให้ Optimistic Rollup และ ZK Rollup แตกต่างกัน

  1. **ZK Rollup **ZK Rollup ไม่เพียงแต่ต้องการผู้ตรวจสอบความถูกต้องที่จะส่งรากสถานะเท่านั้น แต่ยังต้องมีการให้ ZK proof เพื่อตรวจสอบความถูกต้องของการคำนวณรากสถานะ หากผู้ตรวจสอบความถูกต้องส่งรากสถานะผิดพลาด ZK proof จะไม่ผ่านการตรวจสอบของสัญญายืนยัน L1 และจะป้องกันไม่ให้รากสถานะที่เป็นชั่วช้านำเข้า
  2. **Rollup มองโลกในแง่ดี **Optimistic Rollup ทำให้ผู้ตรวจสอบความถูกต้องที่ถูกกำหนดอนุญาตให้ส่งรากสถานะโดยไม่มีการค้ำประกันเพิ่มเติม ซึ่งขึ้นอยู่กับข้อสมมติว่าการส่งเป็นไปตามความซื่อสัตย์ อย่างไรก็ตาม หากรากสถานะที่ส่งมาไม่ถูกต้อง ผู้ใดก็สามารถเสนอข้อเท็จจริงเพื่อขัดขวางการใช้รากสถานะดังกล่าวในกระบวนการถอนเงิน ผู้เสนอข้อเท็จจริงจำเป็นต้องยื่นหลักฐานกับ Ethereum ซึ่งเรียกว่าการยืนยันการทุจริต (Fraud Proof)

เพื่อให้มั่นใจว่าการแก้ไขปัญหาต่าง ๆ เช่นการโจมตีของ L1 Review Periods ถูกทำอย่างปลอดภัย (https://kelvinfichter.com/pages/thoughts/challenge-periods/) เวลาในการถอนเงินใน Optimistic Rollup ทั่วไปจะค่าเครือข่ายเวลาแฝงประมาณหนึ่งสัปดาห์

1.3. ทำไมต้องใช้หลักฐานการฉ้อโกง?

ต่างจาก ZK Rollup ด้วย Optimistic Rollup ผู้ตรวจสอบความถูกต้องสามารถส่งสถานะรากที่ไม่ถูกต้องและพยายามควบคุมธุรกรรมถอนเงินได้ แต่การพิสูจน์การฉ้อโกงจะป้องกันจากสิ่งนี้อย่างมีประสิทธิภาพและรักษาความปลอดภัยของเงินในสัญญาบริดจ์ไว้อย่างมั่นคง

หากไม่มีกลไกการยืนยันการฉ้อโกงที่แข็งแกร่ง Optimistic Rollup จะไม่สามารถรับสืบทอดความปลอดภัยของเอเธอเรียมได้อย่างสมบูรณ์ ตัวอย่างเช่นในระบบ Arbitrum ปัจจุบัน หากผู้ตรวจสอบความถูกต้องทั้งหมดมีการร่วมกัน พวกเขาอาจจะโจมตีขโมยเงินทั้งหมดในสัญญาเชื่อมต่อ อย่างเดียวกันใน Rollup ที่ใช้ OP Stack เช่น Base โดยที่ยังไม่มีกลไกการยืนยันความเสียหายที่ไม่จำกัดบน Mainnet ผู้ตรวจสอบความถูกต้องที่เลวร้ายเพียงคนเดียวก็อาจจะโจมตีขโมยเงินได้

ดังนั้นระบบที่ขาดการจัดการภายในแบบฉลาดที่สมบูรณ์ของ fraud proof จะเป็นความเสี่ยงต่อทรัพย์สินของผู้ใช้

บทความนี้จะประเมินความเสี่ยงที่ Optimistic Rollup ต่างๆ พบและตรวจสอบการนำเสนอของการใช้ proof ต่อต้านการฉ้อโกงของพวกเขาและข้อดีและข้อเสียของมัน

1.4. การเดินทางสู่ขั้นตอนที่ 2: "ถอดล้อช่วย"

ระบบ fraud proof เป็นสิ่งสำคัญในการช่วยให้การทำงาน Optimistic Rollup ในขั้นตอน 'เวอร์ชัน 2' นั้นเป็นไปได้ วิตาลิกได้เสนอโครงสร้างขั้นตอน ซึ่งในปัจจุบัน L2Beat ใช้ในการประเมินระดับความปลอดภัยของ Rollup

ในนิเวศน์ของนิเวศน์ ETH ขั้นนี้โครงสร้างทั่วไปมักถูกเปรียบเทียบกับการขี่จักรยาน โครงสร้าง Rollup ขั้นที่ 0 ขึ้นอยู่กับการสมมติที่เชื่อมั่นมากที่สุด ถูกเปรียบเทียบกับรถสามล้อที่มีล้อช่วย ในขณะที่ Rollup ขั้นที่ 2 ที่สืบทอดความปลอดภัยของ ETH อย่างสมบูรณ์ถูกเปรียบเทียบกับรถสองล้อที่ไม่มีล้อช่วย

นี่คือมาตรฐานรายละเอียดของขั้นตอนที่ 0 ถึงขั้นตอนที่ 2:

เหมือนกับที่กล่าวไว้ในข้อความข้างต้น การใช้ Optimistic Rollup เพื่อให้ได้สู่ขั้นตอน 1 หรือขั้นตอน 2 จำเป็นต้องมีระบบรับรองการฉ้อโกงและกลไกที่สามารถท้าทายได้ โดยพิจารณามาตรฐานเหล่านี้ ระบบรับรองการฉ้อโกงที่ปฏิบัติตามข้อกำหนดของขั้นตอน 2 ควรมีลักษณะดังต่อไปนี้:

  • ระบบทำงานได้ดีโดยไม่มีข้อบกพร่องที่รู้จักและมีคุณสมบัติ "1-of-N"
  • นี่คือระบบที่ไม่ได้รับอนุญาต ใครก็สามารถยื่นข้อมูลได้
  • หากมีช่องโหว่ในระบบพิสูจน์ ควรสามารถพิสูจน์ on-chain

ในส่วนหลังของบทความนี้ เราจะสำรวจว่าโปรโตคอลต่าง ๆ พยายามที่จะทำให้ฟังก์ชันเหล่านี้เป็นจริง

2. หลักฐานการฉ้อโกง - แนวคิดและความเข้าใจผิด

2.1. fraud proof ถูกนำไปใช้งานอย่างไร?

fraud proof ให้การรับรองบนเชื่อมโยงการพิสูจน์ว่าสถานะรากที่ถูกส่งไม่ถูกต้องหมายถึงฟังก์ชันการเปลี่ยนสถานะของ L2 ที่มีการดำเนินการไม่ถูกต้อง วิธีที่ง่ายที่สุดคือการสร้างการพิสูจน์จากรากสถานะที่ได้รับการยืนยันก่อนหน้านี้ไปยังรากสถานะปัจจุบันของ L2 โดยที่พิสูจน์ว่ารากสถานะไม่ถูกต้อง อย่างไรก็ตามวิธีนี้มีค่าใช้จ่ายสูงและใช้เวลานาน

ดังนั้น ในการสร้าง fraud proof ที่ถูกต้อง จำเป็นต้องย่อขนาดลงเป็นสถานะการเปลี่ยนแปลงที่ไม่ถูกต้องเฉพาะเจาะจง และสร้างการพิสูจน์ส่วนนั้น ๆ ส่วนใหญ่ของโปรโตคอล fraud proof จะปฏิบัติตามวิธีการนี้

ขั้นตอนทั่วไปของโปรโตคอลที่รวมถึงการพิสูจน์ความจริงของภาพลวงต่างๆ และการสอบถามเพิ่มเติม fraud proof และโครงสร้างโปรโตคอล

  1. ผู้ตรวจสอบความถูกต้อง (ผู้ส่ง) จะเสนอผลลัพธ์ (หรือคำแถลง) ที่มีรากสถานะ L2 ไปยัง Ethereum อย่างสม่ำเสมอ
  2. ถ้าผู้ตรวจสอบความถูกต้อง (ผู้ตรวจสอบความถูกต้อง) ไม่เห็นด้วยกับผลลัพธ์นั้น พวกเขาจะเริ่มเสนอความเชื่อถือ
  3. ผู้เสนอและผู้คัดค้านจะใช้กระบวนการที่เรียกว่าการแยกออกเป็นสองส่วนหรือวิธีการตัดสินใจเพื่อระบุส่วนที่แตกต่างและระบุรายละเอียดลงไปยังระดับคำสั่งหรือระดับบล็อก (ZK Rollup)
  4. ผู้โต้แย้งส่ง fraud proof ขึ้น on-chain เพื่อพิสูจน์ส่วนที่ไม่ถูกต้อง โดยปกติโปรโตคอลเช่น Arbitrum และ Optimism จะดำเนินการคำสั่งที่เสร็จสมบูรณ์เพื่อยืนยัน
  5. หากพิสูจน์การฉ้อโกงผ่านการตรวจสอบแล้ว ผลลัพธ์ที่ไม่ถูกต้องจะถูกนำออกหรือแทนที่ ตามโปรโตคอลการโต้แย้ง ผู้เสนออาจถูกลงโทษในขณะที่ผู้โต้แย้งจะได้รับรางวัล

2.2. ความคงเคลือนที่พบบ่อย: fraud proof และการสงสัยไม่สามารถย้อนกลับ

สิ่งสําคัญคือต้องทราบว่าแม้ว่าหลักฐานการฉ้อโกงและความท้าทายจะเกิดขึ้นห่วงโซ่จะไม่ถูกย้อนกลับ หลักฐานการทุจริตทําให้มั่นใจได้ว่า "เงินในสัญญาสะพานจะไม่ถูกถอนออกโดยประสงค์ร้าย" และไม่เกี่ยวข้องกับการย้อนกลับของการเปลี่ยนสถานะที่ไม่ถูกต้อง

หลักเหตุที่ไม่ต้องย้อนกลับเป็นเพราะไม่จำเป็น ปัญหาหลักเมื่อมีการสลับสถานะไม่ถูกต้องใน Rollup คือผู้กระทำที่มีเจตนาไม่ดีอาจจะขโมยเงินของผู้ใช้จากบริดจ์ ในการป้องกันจุดนี้เราเพียงต้องให้แน่ใจว่ารากสถานะที่ส่งให้ L1 ถูกต้อง กระบวนการนี้ไม่เกี่ยวข้องกับการย้อนกลับของโซ่ เพียงแค่ป้องกันการยืนยันรากสถานะที่ไม่ดีอาจเพียงพอด้วยการพิสูจน์ข้อเท็จจริงเกี่ยวกับการฉ้อโกงและการถามคำถาม

นอกจากนี้ หากผู้เสนอข้อเสนอสถานะรากและผู้เรียงลำดับบล็อก L2 ไม่ใช่ตัวเดียวกัน ก็ไม่จำเป็นต้องมีกลไกย้อนกลับ

ดังนั้น แม้ว่า L2 จะได้รับการย้อนกลับให้สำเร็จ สถานะรากของ L1 (เอาท์พุตหรือการแสดงความเห็น) เท่านั้นที่จะถูกลบหรือแทนที่ หากข้อความหลอกลวงและกลไกการสอบสวนทำงานอย่างปกติ ความปลอดภัยของเงินทุนบริดจ์ของผู้ใช้จะได้รับการรับประกัน

2.3. ตัวอย่างจริง: การสงสัยของ Kroma เมื่อเดือนเมษายน 2024

จากตัวอย่างข้อพิพาทที่เป็นจริง สามารถเห็นได้ว่าโซ่ Rollup โดยรวมจะไม่ถูกย้อนกลับเลย แต่เพียงแต่รากเอาท์พุทจะถูกแทนที่หรือลบออกเท่านั้น จนถึงปัจจุบัน อย่างที่รู้กันบน Mainnet มีเพียงกรณีเจาะจงคดีที่ประสบความสำเร็จในเดือนเมษายน ค.ศ. 2024 ของ Kroma ซึ่งเป็น Rollup ผสมใช้งานร่วมกับ OP Stack และใช้ ZK Proof of Misbehavior

Kroma เป็น OP Stack based Rollup ที่มี ZK พิสูจน์ความไม่เป็นไปได้และระบบผู้ตรวจสอบความถูกต้องที่ไม่ได้รับอนุญาตของตนเอง ในวันที่ 1 เมษายน 2024 มีปัญหาที่มาจากที่มาของ L1 ของตัวเรียงลำดับของ Kroma ซึ่งทำให้ตัวเรียงลำดับสร้างบล็อกที่ไม่ถูกต้อง นอกจากนี้ ผู้ตรวจสอบความถูกต้องที่สังเกตเห็นสถานการณ์นี้ยังยื่นรากผิดไปหลังจากการยื่นรากผิดของผู้ตรวจสอบความถูกต้อง ไม่นานหลังจากการยื่นรากผิด มีผู้โต้แย้งทั้งหมด 12 คนต่อการส่งผลลัพธ์นั้น

หนึ่งในผู้สงสัยได้เรียกใช้ฟังก์ชัน proveFault และลบเอาออกไป

ผู้เสนอคำถามได้ทำการ execute ฟังก์ชัน proveFault ได้อย่างสำเร็จ | ที่มา:etherscan

นี่เป็นครั้งแรกในประวัติศาสตร์ของ ETH Rollup Mainnet ที่มีคดีคัดค้านที่ประสบความสำเร็จ นี่เป็นครั้งแรกที่มีการตรวจสอบและคัดค้านหลักฐานข้อผิดพลาดใน Mainnet หลังจากที่ Optimistic Rollup (Arbitrum) เปิดตัวครั้งแรกในเดือนพฤษภาคม 2021 หลังจากประมาณสามปี ข้อมูลเพิ่มเติมเกี่ยวกับคดีคัดค้านนี้สามารถอ่านได้จาก บทความที่เขียนโดย Kroma ในคดีนี้ ระบบเครือข่าย Kroma ไม่ได้ถูกย้อนกลับ แต่เพียงแค่ลบรากผลลัพธ์ที่ไม่ถูกต้องออกไปเท่านั้น

คำชี้แจงการไม่รับผิดชอบ: fraud proof หรือหลักฐานการล้มเหลว?

fraud proof ยังเรียกว่า fraud proof โดยเฉพาะอย่างยิ่งใน Optimism และ OP Stack chain ใช้คำว่า "fraud proof" ในขณะที่ในโครงการ Arbitrum、Cartesi และ L2Beat ใช้คำว่า "fraud proof"

เมื่อพิจารณากรณีสงสัย Kroma ดังกล่าว จึงสามารถสรุปได้ว่าความสงสัยมักมาจาก "ข้อผิดพลาด" แทนที่จะมีความประมาทที่ต้องการจะควบคุมการถอนเงินโดยบูรณะเพียงอย่างเดียว ในกรณีที่กล่าวถึง สาเหตุหลักคือ Kroma พบความผิดปกติของ L1 ที่ผู้ตรวจสอบความถูกต้องได้สังเกตเห็น กล่าวคือ ความสงสัยบางครั้งมาจากความผิดพลาดของผู้ตรวจสอบความถูกต้องหรือการใช้ปะทะไม่เหมาะสม ในกรณีนี้ คำว่า "หลักฐานข้อผิดพลาด" อาจจะเหมาะสุด

แต่ที่สำคัญกว่าคำศัพท์ที่สะท้อนจุดประสงค์คือ "fraud proof" ทุกกลไกที่ถูกนำเข้ามาจนถึงตอนนี้ และกลไกที่จะถูกนำเข้ามาในอนาคต มีทุกอย่างเพื่อทำการตรวจสอบพฤติกรรมที่ทำให้เกิด "การฉ้อโกง" โดยการเน่าเสียที่พยายามขโมยเงินภายในสะพาน

ประเด็นคือในขณะที่มีวัตถุประสงค์เพื่อป้องกันการฉ้อโกงในความเป็นจริงข้อสงสัยสามารถเกิดขึ้นได้จากความผิดพลาด ในบทความนี้ฉันจะใช้ "หลักฐานการฉ้อโกง" ซึ่งเป็นคําที่ใช้กันอย่างแพร่หลายในระบบนิเวศ

3. แฮ็ค! - ใช้ประโยชน์จากกลไกการพิสูจน์การทุจริต

3.1. การออกแบบโปรโตคอลการถกเถียงทางเศรษฐกิจ

ทุก Optimistic Rollup มี mekanisme ของ fraud proof และการเสนอข้อโต้แย้งของตัวเองเพื่อป้องกันเงินของผู้ใช้ วัตถุประสงค์ร่วมของเครื่องจักรเหล่านี้คือ 'ถ้ามีผู้เข้าร่วมอย่างน้อยหนึ่งคนที่ซื่อสัตย์ โปรโตคอลก็จะปลอดภัย' fraud proof คือการพิสูจน์ที่ฟังก์ชันการเปลี่ยนสถานะที่กำหนดไว้ถูกทำตามอย่างถูกต้อง ผ่านกระบวนการการตรวจสอบ ผลลัพธ์ที่เกิดขึ้นที่สุดคือชนะของผู้เข้าร่วมที่ซื่อสัตย์

อย่างไรก็ตาม สิ่งนี้ไม่ใช่เสมอไปได้ เพียงแต่มีผู้เข้าร่วมที่ซื่อสัตย์อาจไม่สมควรก็ยังเป็นไปได้ที่โปรโตคอลจะตกอยู่ในสถานการณ์ที่เสี่ยง ตัวอย่างเช่น เนื่องจากมี fraud proof ที่ซับซ้อน อาจจะเกิดช่องโหว่ที่ไม่คาดคิด และผู้ร้ายอาจได้รับประโยชน์ทางเศรษฐกิจมากกว่าผู้เข้าร่วมที่ซื่อสัตย์เนื่องจากมีกรอบสร้างสรรค์ที่ไม่สอดคล้องกัน ทำให้ผู้ใช้ถอนเงินโดยมีค่าเครือข่ายเวลาแฝงสูงหรือเงินถูกขโมยได้

ดังนั้นการออกแบบ fraud proof และกลไกการเสนอข้อเท็จจริงเป็นงานที่ยากมาก โดยเฉพาะการที่ต้องเป็น Rollup ขั้นที่ 2 กลไกการเสนอข้อเท็จจริงต้องเป็นที่สมบูรณ์และต้องมีมาตรการต้านโจมตีเวกเตอร์และช่องโหว่ทุกประเภท

换句话说,每个fraud proof和质疑机制都需要考虑如何应对โจมตีเวกเตอร์。如果不了解每个โจมตีเวกเตอร์,就无法理解为什么โปรโตคอล必须以这种方式设计。

ดังนั้นในบทนี้เราจะศึกษาโจมตีเวกเตอร์ต่อไป และสำรวจว่าโปรโตคอลแต่ละตัวจะตอบสนองกับการโจมตีเหล่านี้อย่างไร

  • เนื่องจากการโจมตีที่เกิดขึ้นจากช่องโหว่ในเกมที่เป็นเรื่องขัดแย้ง;
  • การโจมตีค่าเครือข่ายเวลาแฝง จะทำให้เวลาถอนเงินของผู้ใช้ยืดหยุ่นมากถึง 7 วันขึ้นไป;
  • การโจมตี Sybil ที่ใช้ทรัพยากรและเงินทุนของผู้เข้าร่วมอย่างซื่อสัตย์;
  • โจมตีที่เกิดจากการตรวจสอบความถูกต้องของ L1;
  • การโจมตีที่เกิดจากช่องโหว่ใน fraud proof เครื่องจำลอง

โปรดทราบ: โจมตีเวกเตอร์ที่ถูกพูดถึงทั้งหมดนี้เป็นสาธารณะทราบและไม่สามารถมีผลต่อความปลอดภัยของ Mainnet ใด ๆ

บทต่อไปจะวิเคราะห์โปรโตคอลแต่ละประเภทและคุณลักษณะของแต่ละประเภทตามต่อไปนี้:

3.2. โจมตีเวกเตอร์ #1:利用经济争议游戏

ส่วนใหญ่ของ optimistic Rollup ที่ใช้ fraud proof มักต้องใช้วิธีการแบ่งครึ่งเพื่อหาจุดที่ไม่เหมือนกันครั้งแรก โปรโตคอลต้องให้สิ่งส่งเสริมในการกระทำอย่างซื่อสัตย์แก่ผู้เข้าร่วม ซึ่งเป็นสิ่งสำคัญอย่างยิ่ง

หนึ่งในวิธีที่ง่ายที่สุดในการบรรลุเป้าหมายนี้คือให้ผู้เข้าร่วมมีการมัดจำเงินจำนวนที่กำหนดเมื่อมีการดำเนินการ หากพวกเขาถูกถือว่ามีพฤติกรรมที่ไม่เหมาะสม พวกเขาจะถูกลบค่ามาร์จิ้น

จากมุมมองของทฤษฎีเกมโปรโตคอลจะต้องรักษาให้เหยื่อที่มีเจตนาไม่ดีใช้เงินทุนในการโจมตีมากกว่าเหยื่อที่มีเจตนาดีที่จะป้องกันโจมตี แต่นี่เป็นเรื่องยากมากที่จะปฏิบัติได้

สิ่งสำคัญที่นี่คือในสภาวะที่มีการเล่นเกมในสภาพแวดล้อมใด ๆ ก็ตาม ก่อนที่จะสามารถทราบได้ว่าใครเป็นผู้มีเจตนาร้ายไม่สามารถรู้ล่วงหน้าได้ กล่าวอีกนัยหนึ่ง ผู้ให้คำรับรองที่ส่งออกอาจเป็นผู้มีเจตนาร้าย ผู้เสนอคำถามที่เสนออาจเป็นผู้มีเจตนาร้ายเช่นกัน ดังนั้น โปรโตคอลจึงต้องออกแบบขึ้นบนพื้นฐานของการสงสัยว่าอีกฝ่ายหนึ่งอาจเป็นผู้มีเจตนาร้าย นอกจากนี้ เนื่องจากอาจมีการโจมตีเวกเตอร์ต่าง ๆ การออกแบบโปรโตคอลกลับกลายเป็นซับซ้อนมาก

เนื่องจากโปรโตคอลแต่ละรูปแบบมีกลไกที่แตกต่างกัน จึงต้องกำหนดเวกเตอร์โจมตีและแบบจำลองผู้โจมตีที่สอดคล้องกับแต่ละวิธีการ นอกจากนี้ ต้องออกแบบแบบจำลองความปลอดภัยทางเศรษฐศาสตร์เพื่อให้มั่นใจว่ายังคงปลอดภัย แม้ว่าจะรวมรูปแบบเหล่านี้ไว้พร้อมกันก็ตาม

หัวข้อนี้ยังคงถูกพูดถึงอย่างต่อเนื่อง ในส่วนนี้เราจะวิเคราะห์เวกเตอร์ที่อาจเกิดขึ้นได้บ่อยและแรงจูงใจของผู้เข้าร่วมในสถานการณ์เหล่านั้น นอกจากนี้เรายังจะสำรวจว่าโปรโตคอลแต่ละตัวจะป้องกันการโจมตีเหล่านี้อย่างไร และในระดับใดที่พวกเขาจำกัดความสามารถในการกระตุ้นเช่นนี้

3.2.1. โจมตีเวกเตอร์ #1-1:ค่าเครือข่ายเวลาแฝง攻击

ค่าเครือข่ายเวลาแฝง攻击หมายถึงการโจมตีที่มีจุดประสงค์ไม่ใช่การปล้นทุน Rollup แต่เป็นการป้องกันหรือควบคุมการยืนยันบน L1 ซึ่งการโจมตีนี้สามารถเกิดขึ้นใน Optimistic Rollup ปัจจุบันส่วนใหญ่ โดยทำให้การถอนเงินเพิ่มขึ้นโดยเพิ่มค่าเครือข่ายเวลาแฝงเพิ่มเติม ทำให้ผู้ใช้สามารถถอนเงินจาก L1 เกินหนึ่งสัปดาห์

การโจมตีค่าเครือข่ายเวลาแฝงไม่เหมือนกับการโจมตีที่เกิดจากการตรวจสอบความถูกต้องของ L1 โดยที่เราจะพูดถึงภายหลัง การตรวจสอบความถูกต้องขัดข้องการเข้าร่วมของผู้เข้าร่วมที่ซื่อสัตย์บน ETH ซึ่งทำให้รากสถานะที่ไม่ดีถูกยืนยันในที่สุด อย่างไรก็ตาม ค่าเครือข่ายเวลาแฝงโจมตีสามารถยืนยันรากสถานะที่ไม่ดีได้ แม้กระทั่งในกรณีที่ผู้เข้าร่วมทุกคนเข้าร่วมกิจกรรมโดยซื่อสัตย์ ในกรณีนี้ การถอนเงินของผู้ใช้ไม่เพียงแต่อาจถูกค่าเครือข่ายเวลาแฝงไว้แต่ถ้าเงินของผู้โจมตีมากกว่าผู้ป้องกัน รากสถานะที่ไม่ดีอาจถูกยืนยันในที่สุด ซึ่งจะทำให้เงินของผู้ใช้ถูกขโมย

เป็นหนึ่งในวิธีที่ง่ายที่สุดในการป้องกันการโจมตีค่าเครือข่ายเวลาแฝงคือการต้องการผู้เข้าร่วมในระบบให้มีการมัดจำเป็นจำนวนเงินหรือมาร์จิ้นเมื่อพวกเขาถูกพิจารณาว่าทำให้ค่าเครือข่ายเวลาแฝง จึงสามารถSlashingมาร์จิ้นดังกล่าว

อย่างไรก็ตาม จะต้องพิจารณาปัจจัยบางอย่าง หากผู้โจมตีไม่กลัวว่าเงินทุนจะถูก Slashing และพยายามโจมตีด้วยค่าเครือข่ายเวลาแฝง จะต้องจัดการอย่างไร?

นี่คือ โจมตีเวกเตอร์ ที่ยากมาก นี่เป็นเหตุผลที่ระบบ fraud proof ของ Arbitrum กำลังทำงานในโครงสร้างสิทธิ

กลไกการพิสูจน์การฉ้อโกงที่ใช้กับ Arbitrum One และ Arbitrum Classic ใช้รูปแบบการแตกแขนง แทนที่จะอนุญาตให้ผู้เข้าร่วมท้าทายการอ้างสิทธิ์ที่ไม่ถูกต้องผู้เข้าร่วมแต่ละคนส่งสิ่งที่พวกเขาเชื่อว่าเป็นข้อเรียกร้องที่ถูกต้องพร้อมกับเงินทุนจํานวนหนึ่งโดยถือว่าสิ่งเหล่านี้เป็น "ทางแยกของห่วงโซ่" การเรียกร้องยังถือได้ว่าเป็นจุดตรวจในสถานะของห่วงโซ่

โมเดลสาขาของ Arbitrum

ใน Arbitrum Classic ผู้เข้าร่วมจะส่งคำแถลงที่ถูกต้องและสาขาของโซนที่พวกเขาเชื่อว่าผ่านการเสนอคำถามเพื่อลบสาขาโซนที่ไม่ถูกต้องเป็นลำดับสุดท้าย

อย่างไรก็ตาม คำถามครั้งละครั้งไม่สามารถระบุว่าใครถูกต้อง ผู้ร่วมมีสมมติที่ไม่ดีอาจใช้วิธีการที่ผิดพลาดในการแบ่งครึ่งโดยกำหนดจุดที่เกี่ยวข้องว่าเป็นจุดที่ไม่สอดคล้อง ซึ่งทำให้คำให้การถูกต้องถูกตัดออกดังนั้น Arbitrum รับรองให้การถามของต่อเนื่องจนกว่าไม่มีผู้ร่วมใดๆ ที่จำนองเงินในข้อความเฉพาะเพื่อให้มั่นใจว่าถ้ามีผู้ร่วมที่ซื่อสัตย์อย่างน้อยหนึ่งคน การถามจะสามารถแก้ไขได้

นี่อาจถูกใช้โดยที่ไม่สะดุดตาเพื่อโจมตีค่าเครือข่ายเวลาแฝง สมมติว่ามีผู้เข้าร่วมที่ซื่อสัตย์และ N-1 ผู้โจมตีที่ดำเนินการที่ถูกต้องแล้วมัดจำเงิน และผู้โจมตีคนหนึ่งมัดจำเงินในคำอ้างที่ผิด หากผู้โจมตีสามารถยื่นธุรกรรมของพวกเขาก่อนผู้เข้าร่วมที่ซื่อสัตย์เสมอไป พวกเขาก็สามารถที่จะเริ่มเรื่องโจมตีก่อน ในกรณีที่แย่ที่สุด หากพวกเขาทำการแยกออกเป็นสองส่วนโดยที่ผิดพลาด แยกส่วนที่เห็นกันแต่ไม่แยกส่วนที่ไม่เห็นกัน พวกเขาก็สามารถยื่นข้อพิสูจน์การโจมตี แน่นอนว่านี้จะผ่านไป นำไปสู่การล้มเหลวของฝ่ายที่มัดจำเงินในคำอ้างที่ถูกต้อง

เนื่องจากการสงสัยแต่ละคำอาจใช้เวลานานถึง 7 วัน ผู้โจมตีสามารถขยายเวลาโปรโตคอลเครือข่ายแฝงได้ถึง 7 * (N-1) วัน

การโจมตีล่าช้าสําหรับ Arbitrum Classic | Arbitrum ที่มา: [L2Beat Medium] (https://medium.com/l2beat/fraud-proof-wars-b0cb4d0f452a)

ปัญหาของกลไกนี้อยู่ที่ค่าเครือข่ายเวลาแฝงของการโจมตีมีความสัมพันธ์เชิงเส้นกับโปรโตคอลของค่าเครือข่ายเวลาแฝง หากผู้โจมตีพบว่าการโจมตีแบบนี้สามารถทำกำไรได้ เขาจะต้องการเพิ่มโปรโตคอลของค่าเครือข่ายเวลาแฝงให้นานที่สุดเท่าที่เป็นไปได้ และเวลาทั้งหมดของค่าเครือข่ายเวลาแฝงจะเป็นสัมประสิทธิ์กับยอดเงินทั้งหมดของผู้โจมตี ซึ่งอาจทำให้เวลาของค่าเครือข่ายเวลาแฝงสำหรับการถอนเงินนานมาก

ในสรุป โปรโตคอลการป้องกันการโจมตีค่าเครือข่ายเวลาแฝงที่มีความมั่นคงในการป้องกันการฉ้อโกงได้ จะต้องถูกออกแบบให้สามารถจำกัดเวลาแฝงในช่วงเวลาที่กำหนดได้หรือมีการเพิ่มค่าเครือข่ายเวลาแฝงขึ้นอย่างเร็วเมื่อเวลาผ่านไปเพื่อทำให้มีต้นทุนในการโจมตีที่สูงกว่ากระตุ้นให้โจมตี

3.2.2. โจมตีเวกเตอร์ #1-2: การโจมตี Sybil (การโจมตีด้วยการใช้ทรัพยากร)

อีกหนึ่งโจมตีเวกเตอร์คือการโจมตี Sybil (การโจมตีทรัพยากรอันหมดสิ้น, วาฬโจมตี) โดยเมื่อเจ้ากระทำมีทรัพยากรการเงินหรือการคำนวณที่มากกว่าผู้ป้องกันการโจมตีจะเกิดขึ้น ผู้โจมตีสามารถส่งผลลัพธ์รากที่ไม่ถูกต้องหรือสร้างคำถามที่ไม่มีความหมายเพื่อใช้ทรัพยากรการเงินหรือการคำนวณของผู้ป้องกันอย่างต่อเนื่อง ในหนึ่งขณะแล้วผู้ป้องกันจะเหลือทรัพยากรการเงินหรือการคำนวณที่ไม่เพียงพอในการป้องกัน ในขณะที่เจ้ากระทำจะสามารถระบุรากที่ผิดและขโมยเงินได้

โจมตีเวกเตอร์ที่กล่าวถึงข้างต้นสามารถเกิดขึ้นในระบบที่ไม่ได้รับอนุญาตได้ด้วยวิธีสองแบบดังต่อไปนี้:

  1. การส่งผลลัพธ์ที่ไม่ถูกต้องอย่างต่อเนื่อง สมมติว่าทุนของผู้โจมตี Bob มีมากกว่าผลรวมของผู้เข้าร่วมอย่างซื่อสัตย์ Alice、Charlie และ David ในกรณีนี้ Bob จะส่งผลลัพธ์รากที่ไม่ถูกต้องอย่างต่อเนื่อง ผู้เข้าร่วมอย่างซื่อสัตย์ Alice、Charlie และ David จะตอบโดยการชำระค่า แก๊ส และเงินมัดจำ และเมื่อทุนของผู้เข้าร่วมอย่างซื่อสัตย์เหลือน้อยกว่าค่าที่กำหนด ผลลัพธ์นี้จะถูกยืนยันในที่สุดโดยไม่ถูกขัดขวาง สิ่งนี้ทำให้ Bob สามารถขโมยเงินจากการเล่น rollup อย่างเอาใจใส่
  2. ส่งออกคำสงสัยหลายรายไปยังความซื่อสัตย์ อย่างตรงข้ามกับผู้มีเจตนาไม่ดีที่สามารถโจมตีผู้มีเจตนาดีได้โดยการส่งออกคำสงสัยหลายราย อย่างเช่นเดียวกัน การโจมตีจะยังคงดำเนินการไปเรื่อยๆ จนกว่าผู้มีเจตนาดีจะใช้เงินทุกอย่างที่มีอยู่สำหรับค่าแก๊สและเงินประกัน แล้วผู้โจมตีที่มีเจตนาไม่ดีจะส่งออกผลลัพธ์ที่ไม่ถูกต้องและขโมยเงินของผู้ใช้จากบริดจ์

เพื่อป้องกันการโจมตีดังกล่าวข้อได้เปรียบของผู้พิทักษ์เหนือผู้โจมตีจะต้องได้รับการออกแบบอย่างเหมาะสม ในทุกกรณีผู้พิทักษ์จะต้องมีข้อได้เปรียบที่เพียงพอเหนือผู้โจมตี วิธีหนึ่งในการทําเช่นนี้คือการออกแบบหลักประกันอย่างระมัดระวัง เนื่องจากการโจมตี Sybil เกี่ยวข้องกับจํานวนเงินทั้งหมดที่มีให้กับผู้เข้าร่วมแต่ละคนหากมีการตั้งค่าหลักประกันอย่างถูกต้องจึงควรเป็นไปได้ที่จะพิจารณาว่า "ระบบมีความปลอดภัยหากเงินทุนทั้งหมดของผู้โจมตีไม่เกิน N เท่าของเงินทุนทั้งหมดของผู้พิทักษ์"

วิธีที่รู้จักโดยอีกหนึ่งวิธีในการป้องกันการโจมตี Sybil คือการใช้โปรโตคอลต้าน Sybil ในเรื่องขัดแย้ง เราจะมาเรียนรู้เพิ่มเติมเกี่ยวกับ Cartesi Dave ในบทต่อไป

让我们看看每个โปรโตคอล如何通过各自的设计来应对这些ค่าเครือข่ายเวลาแฝง和 Sybil 攻击。

3.3. วิธีการแก้ไข #1: เกมโต้แย้

1) Arbitrum BoLD

บนพื้นฐานโมเดลสาขาของ Arbitrum Classic โครงสร้าง BoLD ได้นำเข้าสามองค์ประกอบดังต่อไปนี้เพื่อป้องกันช่องโหว่การโจมตีค่าเครือข่ายเวลาแฝง:

  • การทำคำถามทั้งหมดสำหรับกลไกที่ไม่สงสัยทั้งหมด ใน BoLD การถามคำถามไม่ได้อยู่ในรูปแบบคู่คู่อีกต่อไปแต่เป็นการมีความสามารถในการมีคำถามในระบบทั้งหมดที่ผู้เข้าร่วมสามารถเสียเงินมัดจำในสาขาที่พวกเขาเห็นด้วย สิ่งนี้ป้องกันการโจมตีเวกเตอร์ของค่าเครือข่ายเวลาแฝงที่สร้างขึ้นก่อนหน้าและรับประกันว่าไม่สามารถมีการถามคำถามอิสระหลายครั้งสำหรับความขัดแย้งเดียวกัน
  • **การพิสูจน์ที่ถูกต้องจากสถานะเพื่อป้องกันการแบ่งแยกที่ไม่ดี (คำสัญญาประวัติศาสตร์) เป็นสิ่งที่ป้องกันไม่ได้ใน Arbitrum Classic เนื่องจากผู้เข้าร่วมที่ไม่ดีสามารถแบ่งแยกอย่างไม่ถูกต้องและแสดงให้เห็นถึงค่าเครือข่ายเวลาแฝงเพื่อทำให้ส่วนที่ไม่มีข้อโต้แย้งถูกทำเครื่องหมายว่าเป็นจุดโต้แย้ง ด้วยเหตุนี้ BoLD ต้องการให้เสนอพิสูจน์ร่วมกับรากสถานะเพื่อยืนยันว่ารากสถานะถูกคำนวณอย่างถูกต้องในขั้นตอนการแบ่งแยกและรับประกันว่าไม่มีการแบ่งแยกที่ไม่ดีที่เกิดขึ้น

ใน BoLD ผู้เข้าร่วมต้องส่งพิสูจน์และรากสถานะในกระบวนการแบ่งออกเป็นสองส่วน พิสูจน์นี้จะตรวจสอบว่ารากสถานะปัจจุบันถูกคำนวณอย่างถูกต้องจากรากสถานะที่เคยส่งไว้ก่อนหน้านี้หรือไม่ หากผู้เข้าร่วมที่มีเจตนาไม่ดีพยายามส่งรากใด ๆ ที่ไม่เกี่ยวข้องกับรากสถานะที่เคยส่งไว้ก่อนหน้านี้ พิสูจน์นี้จะล้มเหลว ทำให้การแบ่งออกเป็นสองส่วนล้มเหลว นี้เป็นการสร้างการยืนยันว่าแต่ละคำอ้างอิงสามารถเกิดขึ้นได้แค่ประเภทเดียว

ดังนั้นหากผู้โจมตีต้องการใช้การแบ่งปันสองครั้งใน BoLD เพื่อกล่าวอ้างความจริง พวกเขาต้องส่งมอบคำปฏิเสธหลายคำ

อย่างไรก็ตาม การสร้างพิสูจน์ดังกล่าวต้องการผู้ตรวจสอบความถูกต้องที่ใช้ทรัพยากรการคำนวณมากมาย ภายในการสร้างพิสูจน์ดังกล่าวจำเป็นต้องสร้างแฮชสำหรับสถานะทั้งหมดในการแบ่งทุกสิ่งสิ่งแฮชภายใน Arbitrum โดยทั่วไปจะต้องใช้ประมาณ 270 แฮช (ประมาณ 1.18 x 10²¹) ในการแก้ปัญหานี้ BoLD แบ่งคำถามเป็นสามระดับลดจำนวนแฮชที่ต้องคำนวณเหลือ 226 (ประมาณ 6.71 x 10⁷)

(ภาพนี้สมมติว่ามีคำสั่งทั้งหมด 269 คำสั่ง ข้อมูลจริงอาจไม่เหมือนกัน)

  • ผ่านการจำกัดเวลา stake โดยใช้กลไกนาฬิกาเชิงเล่นหมายเลข

ใน Arbitrum Classic เดิม ค่าเครือข่ายเวลาแฝง โปรโตคอล ทำให้ผู้ร่วมสนใจที่มีมติชั่งใช้เงินได้เป็นไปอย่างไม่จำกัด บทบาทของ BoLD คือการใช้กลไกนาฬิกาชิ้นเล็กเพื่อจำกัดเวลาของการมีมติชั่ง

สมมติว่ามีผู้เข้าร่วมสองคนที่ส่งคำอธิบายที่แตกต่างกัน แต่ละคนมีนาฬิกาจับเวลา (clock) ที่อยู่เป็นเวลา 6.4 วัน เมื่อถึงคิวของผู้เข้าร่วมให้ส่งครึ่งหรือพิสูจน์ นาฬิกาจับเวลาจะเริ่มนับถอยหลังและหยุดเมื่อผู้เข้าร่วมทำภารกิจเสร็จ

เนื่องจากผู้เข้าร่วมแต่ละคนมีเวลา 6.4 วัน ดังนั้นผู้เข้าร่วมแต่ละคนสามารถสร้างค่าเครือข่ายเวลาแฝงได้สูงสุด 6.4 วัน ดังนั้นใน BoLD เวลาที่สงสัยนานที่สุดคือ 12.8 วัน (ในบางกรณี จะเพิ่มอีก 2 วันเมื่อคณะกรรมการความปลอดภัยเข้ามาเกี่ยวข้อง)

ผ่านกลไกเหล่านี้ Arbitrum BoLD จำกัดอย่างมีประสิทธิภาพค่าเครือข่ายเวลาแฝงที่เกิดจากคำถาม ระยะเวลาสูงสุดของคำถามคือสองสัปดาห์ และผู้ใช้อาจประสบค่าเครือข่ายเวลาแฝงเพิ่มเติมสูงสุดประมาณหนึ่งสัปดาห์

อย่างไรก็ตาม สิ่งนี้อาจถูกใช้เพื่อทำค่าเครือข่ายเวลาแฝงการโจมตี ผู้ร้ายสามารถสร้างคำถามและร่วมกับผู้ตรวจสอบความถูกต้อง L1 ในการตรวจสอบผู้ตรวจสองความถูกต้องบน Arbitrum เพื่อทำให้ผู้ใช้ Arbitrum ถอนเงินได้ช้าจนถึงหนึ่งอาทิตย์ ในกรณีนี้ ผู้ใช้ที่ขอถอนเงินในช่วงเวลานี้อาจเผชิญกับค่า Opportunitas ที่เกิดขึ้นเนื่องจากการล็อคเงิน แม้ว่านี่ไม่ใช่การโจมตีที่ผู้โจมตีได้รับกำไรโดยตรงจากเงิน แต่เนื่องจากทำให้ผู้ใช้เกิดค่า Opportunitas จึงควรป้องกัน Arbitrum BoLD กำลังรับมือกับปัญหานี้โดยการตั้งมัดจำสำหรับการสร้างคำถามให้มีค่าพอเพียงสูงพอ

Arbitrum คำนวณจำนวนนี้ใน[เอกสารเศรษฐศาสตร์ BoLD 01928374656574839201 คือเหตุผลหลักที่เกิดค่าเครือข่ายเวลาแฝงบน L1 การตรวจสอบความถูกต้องของผู้ตรวจสอบความถูกต้อง ในกรณีที่เกิดการโจมตีค่าเครือข่ายเวลาแฝง ฉากที่เกิดขึ้นจะเป็นดังนี้:

  1. ผู้โจมตียืนยันการประกาศที่มีอยู่บน Arbitrum ก่อนที่จะส่งประกาศ N' ที่ไม่ตรงกับมัน
  2. ผู้ตรวจสอบความถูกต้องใน L1 พยายามส่งธุรกรรมที่แยกออกเป็นสองส่วน แต่การดำเนินการนี้ล้มเหลวเนื่องจากผู้ตรวจสอบความถูกต้องของ L1 กำลังตรวจสอบธุรกรรมข้อขัดข้องของผู้ตั้งคำถาม
  3. เนื่องจาก BoLD สมมติว่าการตรวจสอบไม่สามารถดำเนินการต่อเกิน 7 วัน เป็นไปได้ว่านี่อาจ导致การยืนยัน N ที่สุดของการยืนยันค่าเครือข่ายเวลาแฝงได้มากสุดถึง 1 สัปดาห์

ผลกำไรของผู้โจมตีมาจากต้นทุนโอกาสที่เกิดขึ้นจากผู้ใช้ที่สงสัยการถอนเงิน กรณีแย่ที่สุดคือ ทุกเงินที่อยู่ใน Arbitrum ถูกขอถอนในหนึ่งการถอนเงิน โอกาสที่ผู้ใช้จะต้องรับมือคำนวณต้นทุนโอกาสดังนี้ สมมุติว่า TVL ของ Arbitrum One มีมูลค่า 15.4 พันล้านดอลลาร์ และ APY เท่ากับ 5%:

ค่าใช้จ่ายที่พลาด=15,400,000 x (1.051/52 - 1) = $14,722,400

เนื่องจากการส่งคำแถลงที่ไม่ถูกต้องอาจมีค่า Opportunity cost สูง ผู้ส่งคำแถลงใน BoLD ถูกขอให้ฝากประมาณเท่ากัน ณ ปัจจุบัน จำนวนเงินประกันที่ต้องฝากสำหรับการส่งคำแถลงใน BoLD ถูกกำหนดไว้ที่ 3600 ETH ประมาณ 9.4 ล้านเหรียญสหรัฐเท่า

นี้เป็นเพื่อป้องกันให้กับผู้โจมตีไม่สามารถทำให้ระบบเสียหายได้ในระหว่างการสั่งค่าเครือข่ายเวลาแฝง เนื่องจากผู้โจมตีจะสูญเสียเงินมัดจำในกระบวนการเข้าถึง พวกเขาสามารถสร้างความเสี่ยงต่อทุนการลงทุนสูงสุดถึง 14.7 ล้านดอลลาร์ แต่จะสูญเสียเงินมากกว่า 9.4 ล้านดอลลาร์ ดังนั้น BoLD กำหนดให้เงินมัดจำเท่ากับความเสี่ยงสูงสุดในกรณีที่แย่ที่สุดเพื่อยับยั้งการโจมตีค่าเครือข่ายเวลาแฝง

แต่ยอดมัดจำ 3600 ETH ไม่ได้ถูกกำหนดขึ้นมาเพียงเพราะการโจมตีค่าเครือข่ายเวลาแฝงเท่านั้น สำหรับการป้องกันการโจมตี Sybil ระบบ Arbitrum BoLD สามารถให้ความมั่นคงของระบบโดยที่เงินทั้งหมดของผู้โจมตีต้องมีมูลค่ามากกว่า 6.5 เท่าของเงินทั้งหมดของผู้ป้องกันก่อนที่ระบบจะถูกโจมตี นี่คือเหตุผลที่ทำให้ยอดมัดจำ 3600 ETH ถูกกำหนดขึ้น

จากมุมมองของการโจมตี Sybil อาจมีเหตุการณ์การโจมตีต่อไปนี้ใน Arbitrum BoLD สถานการณ์การโจมตีของ BoLD ประกอบด้วย 3 ระดับผู้ใช้ต้องล็อกเงินเพื่อส่งคำอ้างซึ่งพวกเขาคิดว่าถูกต้อง

สมมติว่าผู้เข้าร่วมที่ซื่อสัตย์ Alice ส่งคำอ้าง X ETH ที่ถือเป็นข้อมูลที่ถูกต้อง ผู้เข้าร่วมที่ไม่ซื่อสัตย์ Bob ที่มี 3600 ETH สามารถสร้างคำอ้างที่ไม่ซื่อสัตย์ได้หลายคำ ในทำนองนี้ Alice จำเป็นต้องล็อก Y ETH สำหรับคำอ้างที่แต่ละคำของ Bob ในระดับต่ำ

ในโมเดลกิ่งก้าว Arbitrum การล็อกเงินหมายถึงการยอมรับสถานะของเชื่อมต่อตั้งแต่เครื่องก่อสร้างถึงการประกาศ คุณลักษณะนี้ช่วยให้ผู้เข้าร่วมสามารถย้ายเงินที่พวกเขาจำนองจากการประกาศ A ไปยังการประกาศย่อย A' และ A'' ดังนั้น Alice จะย้าย X ETH ที่เธอจำนองไว้ไปยังชั้นล่างและล็อก Y ETH สำหรับการประกาศที่มีความชั่วร้ายของ Bob ทุกคน

ถ้า Bob มีเงินมากกว่า Alice อย่างชัดเจน จะเกิดอะไรขึ้น? Bob สามารถสร้างคำอ้างอิงที่ไม่ดีจำนวนมากได้ จนกระทั่งเงินของ Alice หมดลงและไม่สามารถล็อคเก็บเงินต่อไปได้ ในช่วงเวลานี้ Alice จะไม่สามารถทำการแบ่งแยกอีกต่อไป ซึ่งทำให้ Bob สามารถยืนยันคำอ้างอิงที่ไม่ถูกต้องได้

ทั้งหมดสิ้นเชิง ปัญหานี้ย้อนกลับไปที่ ความเป็นที่ดีของผู้ป้องกันในเกมควรมีความเหนือกว่าผู้โจมตี

Arbitrumเรียกอัตราส่วนนี้ว่าอัตราส่วนทรัพยากร มันแสดงถึงความได้เปรียบของผู้เข้าร่วมที่ซื่อตรงเมื่อเทียบกับผู้เข้าร่วมที่เชิดชูความชั่วร้าย อัตราส่วนนี้แสดงผลด้วยอัตราส่วนระหว่างค่าแก๊ส (G) ที่ผู้เข้าร่วมแต่ละคนต้องจ่ายและจำนวนเงินหลักทรัพย์ (S) เช่นต่อไปนี้:

ระบบคัดค้านของ BoLD แบ่งเป็น 3 ระดับ โดยการรักษาอัตราส่วนของทรัพยากรที่มีอยู่ในแต่ละระดับเพื่อให้แน่ใจว่าผู้ป้องกันมีข้อได้เปรียบ N เท่าของผู้โจมตีตลอดระบบ โดย Arbitrum คำนวณจำนวนเงินมัดจำที่จำเป็นสำหรับระดับบนสุดและวาดแผนภูมิตามอัตราส่วนทรัพยากรที่มีอยู่

(ค่าจำนองความขัดแย้งชั้นบนและสัดส่วนของทรัพยากร Arbitrum BoLD | ที่มา:Desmos)

จากแผนภูมินี้เมื่ออัตราส่วนของทรัพยากรเป็น 100 เท่า จำนวนเงินมัดจำที่จำเป็นในชั้นบนเกิน 1 ล้าน ETH (มากกว่า 4 แสนล้านดอลลาร์) แม้ว่าอัตราส่วนของทรัพยากรที่สูงขึ้นจะทำให้ระบบปลอดภัยกว่าเมื่อเทียบกับการโจมตี Sybil แต่จำนวนเงินมัดจำกลับสูงมากจนไม่มีใครสามารถเข้าร่วมระบบได้ นี่ทำให้มันไม่แตกต่างจากระบบที่เป็นศูนย์กลางที่มีเพียงผู้ตรวจสอบความถูกต้องเดียว

ดังนั้นใน BoLD อัตราส่วนของทรัพยากรถูกตั้งค่าเป็น 6.5 เท่าทำให้มีเงินมัดจำระดับสูงที่ 3600 ETH ฝากประเภทหนึ่งและระดับสองถูกตั้งค่าเป็น 555 ETH และ 79 ETH ตามลำดับ

โดยสรุป BoLD คำนวณอัตราส่วนทรัพยากรและกำหนดจำนวนเงินที่จะมัดจำเพื่อให้แน่ใจว่าผู้ป้องกันมีความได้เปรียบมากกว่าผู้โจมตีถึง 6.5 เท่าเพื่อป้องกันการโจมตี Sybil

2) คาร์เทซี่เดฟ

Dave ของ Cartesi ได้เสนอครั้งแรกในเอกสารชื่อ "การแข่งขันการตรวจสอบที่ไม่ได้รับอนุญาต" ในธันวาคม 2022 ก่อนไวท์เปเปอร์ของ BoLD มันมุ่งเน้นให้ทรัพยากรคำนวณและเงินลงทุนของผู้เข้าร่วมอย่างซื่อสัตย์มีความเหนือกว่าผู้โจมตี Dave มีโครงสร้างที่คล้ายกับ BoLD มีลักษณะสองอย่างสำคัญ:

การคำนวณสถานะที่ถูกต้อง (คำสัญญาทางประวัติ) เพื่อป้องกันการแบ่งแยกที่ไม่เต็มใจ

เช่นเดียวกับ BoLD ที่ Dave ต้องการผู้เข้าร่วมในขั้นตอนการแบ่งครึ่งที่สร้างพิสูจน์เพื่อแสดงว่าพวกเขาทำการคำนวณอย่างถูกต้องเพื่อป้องกันการแบ่งครึ่งที่เป็นทรรศนะ ดังนั้น ระบบการสงสัยของ Dave ยังแบ่งเป็นหลายระดับเพื่อประหยัดทรัพยากรของผู้ตรวจสอบความถูกต้อง

ในโครงสร้างการแข่งขันใช้กลไกการถามข้อสงสัยแบบหนึ่งต่อหนึ่ง

คำถามของเดฟไม่ได้เป็นครั้งเดียว แต่เป็นในรูปแบบการแข่งขัน เช่นที่แสดงในภาพด้านล่าง

ในภาพแสดงถึงกระบวนการข้อที่ถูกคัดค้านของผู้โจมตีที่ไม่เต็มใจซึ่งเป็นการสร้างความสงสัยในเครือข่าย ด้วยลักษณะของสัญญาอดีต ผู้เข้าร่วมที่ซื่อสัตย์ที่สนับสนุนการยืนยันที่ถูกต้อง (ที่แสดงด้วยสีเขียว) ถูกรวบรวมเข้าด้วยกันเพื่อเป็นทีม ใน Dave พวกเขาถูกจัดเตรียมให้เป็นการแข่งขันแบบแชมป์และจัดเรียงตามภาพ แต่ละผู้เข้าร่วมทำการสงสัยในแบบทีละคู่ในระหว่างขั้นตอนเดียวกัน ขั้นตอนของการสงสัยในแต่ละรอบเกิดขึ้นพร้อมกัน หลังจากหนึ่งสัปดาห์เมื่อการสงสัยเสร็จสิ้น ผู้ชนะจะเข้าสู่ขั้นตอนถัดไป ในภาพ ทีมของผู้เข้าร่วมที่ซื่อสัตย์จะต้องผ่านกระบวนการสงสัยสามรอบเพื่อชนะแชมป์

คุณลักษณะนี้มีประสิทธิภาพมากในการป้องกันการโจมตี Sybil โดยเฉพาะ โดยผู้โจมตีจะต้องสร้างคำโต้แย้งหลายรายการเพื่อดำเนินการโจมตี Sybil โดยทุกรายการจะใช้ทรัพยากรคำนวณและเงินลงทุนของผู้โจมตีอย่างมาก

Cartesi ได้พิสูจน์ในงานวิจัยของตนว่า ในทุกกรณี ผู้ป้องกันจะสามารถรักษาความเป็นเลขยกลงคูณต่อผู้โจมตีได้เสมอ กล่าวอีกนัยหนึ่ง ดาฟ รักษาระบบให้มีความปลอดภัยจากการโจมตี Sybil ได้ด้วยทรัพยากรที่มีล็อกอาริทึมเพียงเพียงเท่ากับโจมตี Sybil นั่นทำให้การโจมตี Sybil ใน Dave กลายเป็นสิ่งยากมาก จึงทำให้มูลค่าที่มีการมัดจำของ Dave ถูกกำหนดให้เป็น ETH ขั้นต่ำ 1 หน่วย ที่ต่ำกว่ามูลค่าใน BoLD มาก

อย่างไรก็ตาม แดฟถูกโจมตีด้วยค่าเครือข่ายเวลาแฝงอย่างง่ายดาย แต่ละรอบของการแข่งขันใช้เวลาสักหนึ่งหน่วยของเวลาสงสัย (หนึ่งสัปดาห์) ดังนั้นค่าเครือข่ายเวลาแฝงจะยิ่งยาวขึ้นตามคำอธิบายที่ไม่เหมาะสม สูตรที่ใช้ในการคำนวณเวลาที่จำเป็นต้องใช้ในการแก้ไขปัญหาทั้งหมดในแดฟคือ:

Td = 7 x log2(1 + NA) (วัน)

ที่นี่ NAN_ANA แทนจำนวนของการประกาศที่ไม่เหมาะสม อย่างไรก็ตาม การเสนอของ Dave สามารถประกอบด้วยหลายระดับเพื่อสร้างความมั่นใจในประวัติศาสตร์ ในที่นี่ผู้ร่วมก่อการร้ายสามารถสร้างการประกาศที่ไม่เหมาะสม NAN_ANA ในทุกๆระดับของการเสนอ ซึ่งจะเพิ่มเวลาการเลือกตั้งทั้งหมดเช่นเดียวกัน:

Td = 7 x [log2(1 + NA)]L (วัน)

LL แสดงจำนวนชั้นในการสงสัยแต่ละรายการ หากมีการประกาศที่เป็นอันตราย 7 รายการและ L=2 ดังที่แสดงในรูปด้านบน การแก้ไขปัญหาสงสัยอาจใช้เวลานานถึง 9 สัปดาห์ ผู้ใช้จะต้องรอเพิ่มอีก 2 เดือนเพื่อถอนเงินค่าเครือข่ายเวลาแฝง หากจำนวนชั้นเพิ่มขึ้นหรือจำนวนประกาศที่เป็นอันตรายเพิ่มขึ้นค่าเครือข่ายเวลาแฝงอาจเพิ่มขึ้นเป็นเดือน

Cartesi มีวัตถุประสงค์ในการใช้ Proof ที่ไม่รู้จัก (ZK) เพื่อแก้ไขปัญหานี้ การพูดคุยเพิ่มเติมจะถูกตั้งขึ้นในส่วนที่ 4 ซึ่งเรียกว่า "การปรับปรุงที่เป็นไปได้"

3) การพิสูจน์ความถูกต้องที่มีแนวโน้มเชื่อมโยง (Optimism Fault Proof, OPFP)

OPFP เป็นโปรโตคอลที่ไม่ได้รับอนุญาตและถูกสงสัยว่ามีคุณภาพดี ปัจจุบันใช้บน OP Mainnet และมีลักษณะดังต่อไปนี้:

  • การใช้ต้นไม้เกมทั้งหมดในการเสริมความเสี่ยงที่เกี่ยวข้องกับทุกคน

OPFP อนุญาตให้ผู้ใดก็ตามสามารถส่งผลลัพธ์ (คำแถลงราก) ได้ตลอดเวลา ผู้ตรวจสอบความถูกต้องที่ไม่เห็นด้วยกับผลลัพธ์ที่ส่งเข้ามาสามารถเริ่มกระบวนการแยกแยะเพื่อสงสัยคุณภาพได้

สถาปัตยกรรมของต้นไม้การเล่นเกมและกระบวนการแบ่งขั้น OPFP | ที่มา: Optimism ไฟล์

ขั้นตอนการแบ่งครึ่งเป็นการทำพร้อมกันบนต้นไม้การเล่นเกมที่แสดงในภาพด้านบน ใบของต้นไม้แสดงสถานะของ L2 โหนดแต่ละโหนดในต้นไม้แทนสถานะหนึ่งของ L2 ใบทางขวาสุดแสดงสถานะ L2 ล่าสุด ตัวอย่างเช่น การแถลงคำและสถานะที่ถูกส่งในโหนด 1 กับการส่งสถานะในโหนด 31 เป็นเทียบเท่ากัน

โครงสร้างนี้ช่วยให้สามารถแสดงการแบ่งออกได้ เช่น ถ้าผู้ตรวจสอบความถูกต้องไม่เห็นด้วยกับคำอธิบายราก (โหนด 1) พวกเขาจะส่งคำอธิบายที่โหนด 2 โหนด 2 สอดคล้องกับโหนด 23 ในต้นไม้เพรช โดยเนื่องจากมันเป็นจุดกึ่งกลางระหว่าง โหนด 16 และ โหนด 31 โหนด 1 ผู้ส่งคำอธิบายจะตรวจสอบสถานะ L2 ของโหนด 23 ถ้าเห็นด้วยจะส่งโหนด 6 (โหนด 27) ถ้าไม่เห็นด้วยจะส่งโหนด 4 (โหนด 19) ดำเนินกระบวนการนี้ไปเรื่อยๆ จนกว่าจะพบความแตกต่าง

แม้ว่าจะมีหลายทิศทางแบบสองชั้นในการเล่นเกม ก็สามารถเล่นพร้อมกันได้และใครก็สามารถเข้าร่วมกระบวนการแบ่งครึ่งได้ไม่ใช่เพียงผู้ส่งผลลัพธ์เท่านั้น

สถาปัตยกรรมเต็มรูปแบบของต้นไม้เล่นเกม OPFP | แหล่งที่มา: Optimism ไฟล์

OPFP ใช้ต้นไม้เกมซึ่งเป็นโครงสร้างที่ซ้อนกัน เส้นรอบบนจัดการบล็อกระดับครึ่งหนึ่งในขณะที่เส้นรอบล่างจัดการการแบ่งครึ่งระดับคำสั่ง

ไม่เหมือน BoLD หรือ Dave ที่ใช้การสัญญาเพื่อใช้ให้การแบ่งสองทางถูกต้อง แต่ OPFP ไม่ได้ใช้การสัญญาเพื่อใช้ให้การแบ่งสองทางถูกต้องเนื่องจากค่าใช้จ่ายที่สูงในการสร้างและส่งการสัญญาเหล่านี้ off-chain/on-chain

  • โดยใช้โมดูลสามารถปรับแต่งเกมที่เกี่ยวข้อง ขณะนี้ OP Mainnet เพียงมีเกมโต้แย้งสองประเภท (ไม่ได้รับอนุญาต/ได้รับอนุญาต) เท่านั้น Optimism มีเป้าหมายที่จะนำเกมโต้แย้งชนิดต่าง ๆ เข้ามาในที่สุดและได้ทำการสนับสนุนอินเทอร์เฟซขั้นต่ำที่สามารถประมวลผลเพื่อสนับสนุนเป้าหมายนี้ โดยการสร้างเกมโต้แย้งที่กำหนดเองผ่านการปฏิบัติตามชื่อฟังก์ชันและพารามิเตอร์ที่กำหนด

  • จำกัดเวลาการสงสัยโดยนาฬิกาชนวน

ใน OPFP เมื่อมีการสงสัย ผู้เสนอและผู้สงสัยจะได้รับนาฬิกาหนึ่งตัว ที่จัดสรรไว้สำหรับการแบ่งสองเวลา ทุกครั้งที่มีการประกาศคำสั่ง นาฬิกาจะเริ่มนับเวลาสำหรับฝ่ายตรงข้าม Optimism เรียกว่า "นาฬิกาที่สืบต่อจากปู่"

น่าสนใจที่ผู้เข้าร่วมทุกคนสามารถมีเวลา 3.5 วันแทน 7 วัน ซึ่งหมายความว่าหากไม่มีใครเสนอข้อสงสัยเกี่ยวกับการผลิต การผลิตนั้นจะถูกกำหนดให้เสร็จภายใน 3.5 วัน

อย่างไรก็ตาม การถอนเงินไม่สามารถทำได้ทันที หลังจากที่การตัดสินใจสุดท้ายได้ถูกกำหนดไว้ OPFP จะมีช่วงเวลาหนึ่ง 3.5 วันในการดูแลรักษา ในช่วงเวลานี้ คณะกรรมการความปลอดภัยสามารถแทรกแซงและทำให้ผลลัพธ์ที่ไม่ถูกต้องไม่สามารถใช้งานได้ในกรณีที่จำเป็น

ขั้นตอนการถอนเงินใน 'เส้นทางที่ดี' ของผู้ใช้ | ที่มา: บล็อกของ OP Labs

โดยใช้กลไกเหล่านี้ OPFP และ Rollups ที่เชื่อมั่น (optimistic rollups) อื่น ๆ ยืนยันว่าผู้ใช้สามารถถอนเงินอย่างน้อยหลังจาก 7 วันหลังจากการยืนยัน อย่างไรก็ตาม หากเกิดข้อโต้แย้งผู้ใช้อาจต้องใช้เวลามากกว่า 7 วันเพื่อถอนเงินจากเอาท์พุตนั้นๆ โมเดลเร็วของ OPFP จำกัดเวลาที่ผู้ร่วมสมทบสามารถใช้สำหรับกระบวนการแบ่งครึ่ง แต่ไม่จำกัดเวลาทั้งหมดก่อนการแก้โต้แย้ง

นี่เป็นคำถามหนึ่งที่เกิดขึ้น: หากมีความสงสัยเกี่ยวกับ OPFP กับค่าเครือข่ายเวลาแฝงของผู้ใช้งานว่าการถอนเงินของผู้ใช้งานอาจใช้เวลานานเกินหนึ่งสัปดาห์ เช่นเดียวกับ BoLD หรือไม่? คำตอบคือ 'ใช่' แต่ไม่เหมือนกับ BoLD หรือ Dave Optimism มีตัวเลือกที่ให้ผู้ใช้งานเลือกในกรณีที่มีความสงสัย ซึ่งขึ้นอยู่กับคุณสมบัติที่โปรโตคอลมี

OPFP ดําเนินการบนสมมติฐานที่ว่า "ผู้เข้าร่วมที่ส่งข้อเรียกร้องที่ไม่ถูกต้องจะสูญเสียมาร์จิ้น" อย่างไรก็ตามมีกรณีขอบใน OPFP ที่ทําให้สมมติฐานนี้แตกซึ่งเรียกว่า "คําสั่งผู้ขับขี่ฟรี" สิ่งนี้สามารถเกิดขึ้นได้ในสถานการณ์ต่อไปนี้:

  1. Alice ส่งคำอธิบายเกี่ยวกับรากสถานะที่ถูกต้อง
  2. Bob ยื่นการปฏิเสธในขณะที่ Alice ดำเนินการปกป้องคำบอกเล่าต้นฉบับของเธอ
  3. โบบ รอจนกระเป็นของเขาเกือบหมด (3.5 วัน) แล้วเขาเสียงศัตรูในคำพูดของเขาเอง

ในขณะนี้ Alice ควรตอบกลับและเรียกร้องมาร์จิ้นของ Bob แต่เธอได้รับเวลาที่เหลืออยู่บนนาฬิกาของ Bob ซึ่งอาจไม่เพียงพอที่จะโต้แย้งคำอธิบายของเขา ดังนั้น Bob อาจยื่นคำโต้แย้งการโดยสารเพื่อหลีกเลี่ยงการสูญเสียมาร์จิ้นของเขา

คำแถลงการณ์การขอรับการขนส่งฟรีใน Optimism Fault Proof | ที่มา:L2Beat

ถึงแม้สถานการณ์นี้จะไม่ขัดข้องการสอบถามที่ได้รับการแก้ไขอย่างถูกต้อง แต่มันก็แสดงถึงสถานการณ์หนึ่งที่ "ส่งคำแถลงไม่ถูกต้องและไม่ได้มาร์จิ้น" ซึ่งจากมุมมองของการกระตุ้น ควรหลีกเลี่ยงสถานการณ์นี้

ดังนั้นหากเหลือเวลาของผู้เสนอหรือผู้สงสัยน้อยกว่า 3 ชั่วโมง OPFP จะแก้ไขปัญหานี้โดยการรีเซ็ตนาฬิกาเป็น 3 ชั่วโมง ซึ่งจะรับประกันว่าจะมีเวลาเพียงพอสำหรับการโต้เถียงคำให้การของผู้โดยสาร อย่างไรก็ตามหากไม่มีการดำเนินการภายในรอบครึ่งหนึ่งถัดไปเกิน 3 ชั่วโมงการสงสัยจะสิ้นสุดลง

เราสามารถจินตนาการถึงสถานการณ์หนึ่ง ในสถานการณ์นี้ กลไกนี้ถูกใช้ในการโจมตีค่าเครือข่ายเวลาแฝง สมมติว่าผู้เข้าร่วมอย่างซื่อสัตย์ Alice ส่งผลลัพธ์ที่ถูกต้องตั้งแต่ทันทีที่ Alice ส่ง นาฬิกาของผู้สงสัยเริ่มต้นจับเวลา ผู้เข้าร่วมที่มีเจตนาไม่ดี Bob รอจนกว่านาฬิกาของผู้สงสัยจะหมดเวลาก่อน 1 วินาทีแล้วส่งผลลัพธ์ที่ไม่ถูกต้อง ในขณะนี้ กฎของ OPFP จะขยายเวลาของ Bob ไปอีก 3 ชั่วโมง Alice จะตอบสนอง และ Bob จะใช้ประโยชน์จาก 3 ชั่วโมงเพิ่มเติมที่ได้จากการแบ่งออกทุกครั้ง

นี่อาจเป็นคำตอบที่ก่อให้เกิดความสงสัยเกี่ยวกับค่าเครือข่ายเวลาแฝง บ็อบสามารถคงอยู่ในขณะค่าเครือข่ายเวลาแฝงได้นานที่สุด 3.5 วัน + 3 ชั่วโมง × จำนวนครึ่งที่มากที่สุด OPFP MAX_GAME_DEPTH มีค่า 73 ซึ่งหมายความว่าบ็อบสามารถคงอยู่ในกระบวนการค่าเครือข่ายเวลาแฝงได้นานที่สุด 3.5 วัน + 3 ชั่วโมง × 36 = 8 วัน หาก Alice มีมาตรการที่คล้ายกันในการค่าเครือข่ายเวลาแฝงเช่นเดียวกัน กระบวนการครึ่งอาจใช้เวลาถึง 16 วัน

สิ่งนี้หมายความว่าผู้ใช้ไม่สามารถถอนเงินภายใน 16 วันได้หรือไม่? ในความเป็นจริงไม่ใช่เช่นนั้น เนื่องจาก Optimism มีตัวตนการถอนเงินที่ไม่สามารถเกิดขึ้นได้ ต่างจาก Arbitrum ซึ่งต้องการการพิสูจน์ว่าการถอนเงินต้องถูกแนบอยู่ในบล็อก L2 ที่เฉพาะเจาะจง OP Stack ใช้การเก็บพยากรณ์การพิสูจน์ตนเหล่านี้ในช่องทาง L2ToL1MessagePasser ของ L2 นี้หมายความว่าถึงแม้เวลาในการพิสูจน์ความถูกต้องของผลลัพธ์เฉพาะหน้าจะยาวนานมาก ผู้ใช้ยังสามารถรอให้ผลลัพธ์ครั้งต่อไปเสร็จสิ้นและถอนเงินตามต้องการได้โดยใช้รากเก็บของสัญญาที่รวมไว้ในผลลัพธ์นั้น ดังนั้น ผู้ใช้ไม่ต้องผ่านค่าเครือข่ายเวลาแฝงนานเพื่อรอให้การถอนเงินในบล็อกที่ถูกขอเงินนั้นถูกยืนยัน เพราะพวกเขาสามารถใช้ผลลัพธ์ครั้งต่อไปได้

อย่างไรก็ตาม ทุกสิ่งเกิดขึ้นได้เฉพาะในกรณีที่ผู้ใช้ดำเนินการอย่างรวดเร็ว เเต่ในส่วนมากผู้ใช้อาจยังต้องเผชิญกับค่าเครือข่ายเวลาแฝงเป็นเวลาหลายวัน นี่เป็นไปได้เพราะกระบวนการถอนเงินใน OP Stack ประกอบด้วยขั้นตอนทั้งหมด 3 ขั้นตอนดังต่อไปนี้:

  1. เริ่มต้นการถอนเงินใน L2 (initiateWithdrawal)
  2. ใน L1 ยืนยันการถอน (proveWithdrawalTransaction) ประกอบด้วยเอาท์พุตของการถอน
  3. รอการยืนยันการถอนเงินจนถึงสัปดาห์หนึ่ง (ค่าเครือข่ายเวลาแฝง),จากนั้นทำการเสร็จสิ้นการทำธุรกรรมการถอนเงิน (finalizeWithdrawalTransaction)

ค่าเครือข่ายเวลาแฝง

ดังนั้นผู้ใช้ที่สร้างหรือตอบสนองโดยไม่เห็นด้วยอาจมีค่าเครือข่ายเวลาแฝงในการถอนเงินเพิ่มเติมสูงสุด 9 วัน

นอกจากนี้ยังมีการโจมตีเวกเตอร์เวลาค่าเครือข่ายเพิ่มเติมใน OPFP ที่ถูกสงสัยอย่างต่อเนื่องหนึ่งในแต่ละเอาต์พุท ในกรณีนี้ผู้ใช้ไม่สามารถหลีกเลี่ยงค่าเครือข่ายเวลาแฝงโดยการพิสูจน์บนเอาต์พุทถัดไปซึ่งทำให้โปรโตคอลโดนค่าเครือข่ายเวลาแฝง OPFP จึงจำเป็นต้องใช้ stake มาร์จิ้นในทุกๆระดับที่แบ่งออกเป็นสองส่วนเพื่อรับมือกับสถานการณ์นี้ จำนวนมาร์จิ้นเพิ่มขึ้นอย่างเร็วเป็นเลขยกกำลังตามแผนภูมิด้านล่าง

OPFP Margin Amount | LinkedIn ที่มา: [Optimism File] (https://specs.optimism.io/fault-proof/stage-one/bond-incentives.html)

กล่าวอีกนัยหนึ่ง หากผู้โจมตีพยายามยืดเวลาในการแก้ไขเข้า OPFP มากขึ้น เมื่อเวลาในการแก้ไขยืดหยุ่นมากขึ้นมาร์จิ้นที่จำเป็นต้องใช้จะสูงขึ้นเนื่องจากมาร์จิ้นต้องการใช้เวลาเพิ่มขึ้นอย่างชัดเจน ซึ่งทำให้ลดความกระตือรือร้นในการโจมตีเครือข่ายเวลาแฝงได้ เนื่องจากผลลัพธ์ใน OPFP สามารถส่งมอบได้ตลอดเวลา ผู้โจมตียากที่จะประเมินปริมาณทรัพยากรที่จำเป็นสำหรับการโจมตีเครือข่ายเวลาแฝง มาร์จิ้นเริ่มต้นถูกตั้งค่าไว้ที่ 0.08 ETH และต้องมีมาร์จิ้นรวมทั้งหมดประมาณ 700 ETH ในกรณีที่มีการคัดค้านอย่างเต็มรูปแบบ

ทั่วไปแล้ว OPFP ในกรณีที่เกิดคำถามครั้งเดียวจะให้ผู้ใช้ตัดสินใจเวลาค่าเครือข่ายเวลาแฝง และใช้ค่ามาร์จิ้นแบบเป็นเลขยกกำลังเพื่อเอาชนะการโจมตีค่าเครือข่ายเวลาแฝงที่เกิดจากการถามคำถามต่อเนื่อง อย่างไรก็ตาม OPFP อาจถูกโจมตีโดย Sybil ได้ง่าย ใน OPFP ถ้าเจ้ากระทู้มีเงินมากกว่าผู้ป้องกัน จะเกิดการโจมตี Sybil

ใน OPFP อาจมี Sybil โจมตีเวกเตอร์ ต่อไปนี้ ทั้งหมดอาจทำให้เงินของผู้ใช้ถูกขโมย:

  1. ผู้โจมตีสร้างข้อสงสัยหลายราย เพื่อทำให้ผู้ป้องกันใช้เงินทุกอย่างในการมาร์จิ้นและค่าแก๊ส
  2. ผู้โจมตีส่งผลลัพธ์ที่ไม่ถูกต้องอยู่เสมอเพื่อกระตุ้นการตอบสนองจากผู้ป้องกันจนกระทั่งใช้จ่ายเงินมาร์จิ้นและค่า Gas ได้หมด

สิ่งนี้เป็นไปได้ใน OPFP เนื่องจากในกระบวนการสงสัยทั้งหมด ค่ามาร์จิ้นทั้งหมดที่ผู้โจมตีและผู้ป้องกันต้องการเกือบเท่ากันและทรัพยากรที่ผู้ป้องกันใช้ (เช่น ค่า Gas หรือพลังคอมพิวเตอร์) ไม่น้อยกว่าผู้โจมตีอย่างมาก

อย่างไรก็ตาม สิ่งนี้ไม่ได้หมายความว่าเงินของผู้ใช้ใน OP Mainnet ณ ขณะนี้อยู่ในอันตราย OPFP ยังอยู่ในขั้นตอนที่ 1 คณะกรรมการความปลอดภัยมีสิทธิ์แก้ไขผลลัพธ์ที่ไม่เหมาะสมใด ๆ ดังนั้น แม้จะเกิดการโจมตีแบบนี้ก็ยังสามารถให้คณะกรรมการความปลอดภัยเข้ามาเพื่อปกป้องเงินของผู้ใช้บนสะพาน OP Mainnet

อย่างไรก็ตามเพื่อย้าย OPFP ไปยังระยะที่ 2 การมองโลกในแง่ดีต้องปรับเปลี่ยนกลไกเพื่อให้แน่ใจว่าผู้พิทักษ์มีข้อได้เปรียบมากกว่าผู้โจมตี การมองโลกในแง่ดีกําลังเตรียมเกมโต้เถียง V2 เพื่อแก้ไขปัญหานี้โดยมีรายละเอียดเพิ่มเติมที่ครอบคลุมในส่วนที่ 4 "การปรับปรุงที่เป็นไปได้"

4) Kroma ZK หลักฐานขัดข้อง (Kroma ZKFP)

Kroma คือ L2 ที่พัฒนาจาก OP Stack และมีระบบพิสูจน์ความถูกต้องโดยใช้ ZK ไม่ต้องขออนุญาต ระบบนี้ได้ถูกเปิดตัวบน Mainnet ในเดือนกันยายน 2023 ก่อนที่ OPFP จะเข้ามาช่วยในการพัฒนา คุณสมบัติของ Kroma ZKFP คล้ายคลึงกับ OPFP แต่เด่นขึ้นอยู่ที่การใช้ ZK สร้างพิสูจน์ระดับบล็อค และใช้การแยกตัวแทนการแบ่งซ้อนแทนการแบ่งครึ่ง ซึ่งลดจำนวนการโต้ตอบที่จำเป็นในกระบวนการท้าทายได้เยอะขึ้น

  • โดยใช้ ZK และการแยกออกเพื่อลดจำนวนการโต้ตอบ

Kroma ZKFP ช่วยให้ผู้เข้าร่วมค้นหาจุดความแตกต่างในการโต้ตอบ 4 ครั้ง โดย Kroma ZKFP จะดำเนินการคำถามบน 1,800 บล็อก โดยเริ่มจากเอาท์พุตก่อนหน้าไปสู่เอาท์พุตปัจจุบัน แตกต่างจากวิธีการแบ่งครึ่งที่ใช้ในการค้นหาบล็อก โดยในการแบ่งครึ่งจะแบ่งขอบเขตเป็น 2 ส่วน ในขณะที่ในการแยกออกจะแบ่งขอบเขตเป็น N ส่วน กระบวนการดังกล่าวคือ

เมื่อผู้เข้าร่วมทุกคนส่งธุรกรรม 2 ครั้งแล้วพวกเขาจะกำหนดบล็อกที่พวกเขามีความแตกต่าง ผู้โจมตีสามารถสร้างหลักฐานการล้มเหลว ZK เพื่อแสดงว่าคำสั่งของผู้เสนอไม่ถูกต้อง ใน Kroma ZKFP การตั้งค่าการหมดเวลาแบบทวิภาคถอดสลาย 1 ชั่วโมง และการหมดเวลาการสร้างหลักฐาน ZK คือ 8 ชั่วโมง

  • 通过激励机制实现ผู้ตรวจสอบความถูกต้อง的การกระจายอำนาจ

BoLD และ OPFP มีการกระตุ้นให้ผู้ชนะที่สงสัยได้รับแรงบันดาลใจ แต่ไม่ได้ให้ผู้ส่งข้อมูลรับแรงบันดาลใจที่แน่ชัด ในความเป็นจริง ใครก็สามารถส่งข้อมูลออกมาและกลายเป็นผู้ตรวจสอบความถูกต้องได้ อย่างไรก็ตาม สำหรับผู้ใช้ที่ต้องการถอนเงิน การดำเนินการผ่านไคลเอนต์ผู้ตรวจสอบความถูกต้องด้วยตนเองไม่เป็นเรื่องที่เป็นไปได้ และต้องมีผู้ส่งข้อมูลออกมาเป็นประจำเพื่อรักษาความเป็นไปได้ในการดำเนินการ โดยเนื่องจากเป็นงานที่ใช้ทรัพยากรมาก จึงต้องชำระค่าแก๊สในการส่งข้อมูลออกและดำเนินการผ่านไคลเอนต์ผู้ตรวจสอบความถูกต้อง ดังนั้นหากไม่มีการกระตุ้นที่เหมาะสม อาจจะมีเพียงไม่กี่คนที่เข้าร่วมเป็นผู้ตรวจสอบความถูกต้อง ซึ่งอาจทำให้เกิดการทำศูนย์กลางและการตอบสนองที่ไม่เพียงพอในสถานการณ์ที่เกิดข้อขัดข้อง

ด้วยเหตุนี้ Kroma ได้แก้ไข OP Stack โดยจะแบ่งค่า Gas ที่เกิดขึ้น on-chain ไปให้กับผู้ตรวจสอบความถูกต้องที่ส่งออก คู่กับนั้น Kroma วางแผนที่จะเปลี่ยนระบบรางวัลนี้ไปยังโทเค็นแบบ native ของตน KRO หลังจาก TGE และตั้งใจที่จะนำเข้าระบบผู้ตรวจสอบความถูกต้องที่คล้ายกับ DPoS เพื่อให้ผู้ใช้ทั่วไปสามารถมีส่วนร่วมในความปลอดภัยและความมีชีวิตชีวาของเครือข่ายได้โดยไม่ต้องเรียกใช้ไคลเอ็นต์ของตนเอง

ใน Kroma จำนวนมาร์จิ้นถูกตั้งค่าเป็น 0.2 ETH ให้แน่ใจว่ามันมากกว่าค่าใช้จ่ายในการสร้าง ZK พิสูจน์และการแบ่งเป็นสอง มาร์จิ้นนี้จะเปลี่ยนเป็นstake ของ KRO ในระบบผู้ตรวจสอบความถูกต้องในอนาคต

  • ระบบท้าทาย 1 ต่อ 1 พร้อมกัน

เพื่อให้การกระจายผลกระตุ้นเป็นอย่างยุติธรรมและสม่ำเสมอ Kroma จะกำหนดช่วงเวลาการส่งที่แน่นอนเป็น 1 ชั่วโมงและสุ่มเลือกผู้ตรวจสอบความถูกต้องจากกลุ่มผู้ตรวจสอบความถูกต้องที่ลงทะเบียนล่วงหน้าเป็นผู้เสนอ สิ่งนี้ป้องกันการแข่งขันที่เกินไปซึ่งอาจทำให้เสียค่า Gas และป้องกันผู้สร้างบล็อกที่มีสิทธิ์ในการจัดเรียงธุรกรรมจากการครอบครองรางวัล

ด้วยกลไกนี้ Kroma ZKFP ทำงานในระบบข้อสงสัยแบบ 1 ต่อ 1 เมื่อผู้ตรวจสอบความถูกต้องที่ถูกเลือกสุ่มส่งผลลัพธ์ออกมา ใครก็สามารถเริ่มข้อสงสัยได้และการแบ่งแยกเกิดขึ้นเฉพาะระหว่างผู้ส่งผลลัพธ์และผู้สงสัย สามารถมีการสงสัยหลายๆ กรณีได้พร้อมกัน ผู้สงสัยที่ส่งพิสูจน์ ZK ที่ถูกต้องในกรณีแรกจะเป็นผู้ชนะของข้อสงสัย

การตั้งค่าเวลาที่เข้มงวดหมายความว่าผู้โจมตีที่ตั้งใจจะโจมตีค่าเครือข่ายเวลาแฝงต้องทำงานทั้งหมดในเวลา 10 ชั่วโมงในการทำงานและการสร้างพิสูจน์ของทั้งสองฝั่ง นอกจากนี้เพราะผู้โจมตีถูกบังคับให้ทำงานทั้งหมดในระยะเวลา 6 วัน (ไม่รวมวันการดูแล) จึงเป็นไปไม่ได้ที่จะโจมตีค่าเครือข่ายเวลาแฝงใน Kroma ได้อย่างสมบูรณ์แบบ

อย่างไรก็ตามหากเจ้ามือโจมตีมีเงินมากกว่าผู้ป้องกัน Kroma ZKFP จะยังคงเป็นเป้าหมายของการโจมตี Sybil อย่างเดียวกับ OPFP ใน Kroma ZKFP โจมตี Sybil อาจมีลักษณะดังนี้:

  • ผู้โจมตีจะยังคงสงสัยต่อผลลัพธ์ที่ถูกต้องจนกว่าเงินของผู้ส่งผลลัพธ์จะหมด ในขณะนั้นผู้โจมตีจะส่ง ZK พิสูจน์เพื่อชนะการสงสัย

เช่นกับ OPFP คล้ายกัน Kroma ZKFP จะลบเอาเอาท์พุทที่เกี่ยวข้องหลังจากการเสนอเหตุผลที่ประสบความสำเร็จ ดังนั้นหากเกิดการโจมตีดังกล่าว ที่อาจทำให้ผู้ใช้ถอนเงินในค่าเครือข่ายเวลาแฝงถึง 1 ชั่วโมง การโจมตีเรื่อย ๆ อาจส่งผลให้ผู้ตรวจสอบความถูกต้องทุกคนใช้เงินหมด ซึ่งอาจทำให้ผลลัพธ์ออกผิดพลาดไปเมื่อถูกยืนยันในที่สุด ซึ่งจะทำให้ผู้โจมตีสามารถขโมยเงินของผู้ใช้ได้

นอกจากนี้ Kroma ZKFP ยังอยู่ในขั้นตอนที่ 0 ระบบพิสูจน์ยังไม่สมบูรณ์เพราะเหตุผลดังนี้:

  1. จุดเริ่มต้นของการแบ่งทอดพิสูจน์ยืนยันล่าสุด ไม่ใช่การยืนยันที่ส่งล่าสุด

ใน OPFP จุดเริ่มต้นของการแบ่งครึ่ง通常เป็นเอาต์พุตการยืนยันล่าสุดประมาณหนึ่งสัปดาห์ก่อน แต่ใน Kroma ZKFP จุดเริ่มต้นเป็นเอาต์พุตที่ส่งมอบล่าสุดซึ่งส่งมอบประมาณ 1 ชั่วโมงก่อนและกระบวนการแบ่งครึ่งเป็นบล็อก 1,800 บล็อก

นี่อาจทำให้ผู้สงสัยชนะคำถามในกรณีที่การผลิตก่อนหน้าถูกลบออกจากการสงสัย ในกรณีนี้ การแบ่งเป็นสองจะพึงพอใจกับข้อมูลที่ผู้สงสัยส่งมาก่อนหน้า หากผู้สงสัยทำให้ข้อมูลเหล่านั้นเป็นอันตรายเขาอาจชนะคำถาม

  1. ทุกผู้ตรวจสอบความถูกต้องว่าจะถอดอ้างอิงจากข้อมูลชุดที่ถูกต้องหรือไม่ ไม่ได้รับการยืนยัน

แม้ว่า Kroma ZKFP จะใช้ ZK เพื่อให้แน่ใจว่าหากวงจร ZK ไม่มีช่องโหว่จะไม่สามารถยืนยันสถานะการเปลี่ยนสถานะที่ผิดพลาดได้ แต่ Kroma ZKFP ยังไม่ได้ตรวจสอบว่า ZK พิสูจน์ที่สร้างขึ้นนั้นเหมาะสมกับข้อมูลชุดที่ถูกต้องหรือไม่ นั่นหมายความว่า แม้ว่าบางธุรกรรมจะถูกตัดออกหรือบางธุรกรรมที่ผิดพลาดจะถูกนำเข้าไปในการประมวลผลชุด ยังสามารถยืนยัน ZK พิสูจน์ได้

ดังนั้น อาจจะเป็นไปได้ที่จะชนะการโต้แย้งด้วยการใช้ ZK พิสูจน์ที่ขึ้นอยู่กับข้อมูลที่ผิด และหากธุรกรรมการถอนของผู้ใช้ถูกข้ามออกจากการประมวลผลเป็นกลุ่ม การถอนของพวกเขาอาจถูกค่าเครือข่ายเวลาแฝง

อย่างไรก็ตามในทางปฏิบัติคณะกรรมการรักษาความปลอดภัยสามารถแทรกแซงเพื่อถอนผลลัพธ์ของความท้าทายที่ผิดพลาดหรือลบผลลัพธ์ที่ไม่ถูกต้องดังนั้นการโจมตีเวกเตอร์เหล่านี้จะไม่ส่งผลกระทบต่อเงินทุนของผู้ใช้ Kroma Mainnet อย่างไรก็ตามเพื่อให้ถึงระยะที่ 2 Kroma ZKFP ต้องใช้กลไกการป้องกันช่องโหว่เหล่านี้ Kroma ได้เสนอการปรับปรุงเพื่อแก้ไขปัญหาเหล่านี้ซึ่งอธิบายไว้ในรายละเอียดในส่วนที่ 4 "การปรับปรุงที่เป็นไปได้"

3.4 โจมตีเวกเตอร์ #2:L1 审查

ก่อนหน้านี้เราได้กล่าวถึงว่า Rollup ได้รับคุณสมบัติความปลอดภัยจาก Ethereum ซึ่งหมายความว่าหากความปลอดภัยของ Ethereum ถูกทำลาย Rollup ก็จะได้รับผลกระทบ

สองสถานการณ์ที่อาจส่งผลต่อความปลอดภัยของ Rollup ที่อาจมีผลต่อ Ethereum คือ:

  1. การตรวจสอบของผู้ตรวจสอบบล็อก ETH สำหรับการโจมตีแบบ Rollup fraud proof ถ้าผู้ตรวจสอบหรือผู้สร้างบล็อกเชน ETH ก่อกวนร่วมกันโดยส่งรากเอาต์พุทที่ไม่ดีใน Optimistic Rollup พร้อมตรวจสอบธุรกรรมทั้งหมดที่เกี่ยวข้องกับ fraud proof จะเกิดอะไรขึ้น? การโจมตีนี้จะไม่สามารถแก้ไขได้ภายในระยะเวลาที่กำหนดแล้วและการเดินทางจะได้รับการยืนยัน ทุกๆเงินทุนของผู้ใช้อาจมีความเสี่ยง นี้เรียกว่าการตรวจสอบที่อ่อนแอ ในกรณีของ Optimistic Rollup หากการตรวจสอบดังกล่าวยืนอยู่เกินเวลาที่กำหนด (โดยทั่วไปเป็น 7 วัน) ทุนของผู้ใช้อาจเผชิญกับความเสี่ยง
  2. Ethereum ถูกโจมตีด้วยการโจมตี 51% ทำให้ธุรกรรม fraud proof ทั้งหมดถูกตรวจสอบ ** สถานการณ์นี้เกี่ยวข้องกับ 2 เส้นทางการโจมตีที่เป็นไปได้:
  • ตัวแทนสามารถได้รับ stake รวมมากกว่า 2/3 ของ Ethereum ที่จะทำให้เขาสามารถยืนยันบล็อกได้ตามที่เขาต้องการ ในกรณีนี้ ผู้โจมตีสามารถตรวจสอบธุรกรรม fraud proof หรือแม้กระทั่งสร้างธุรกรรมเหล่านั้นได้ตามต้องการ
  • วิธีที่สองเกี่ยวข้องกับผู้มีส่วนร่วมมากกว่า 1/3 ของ ETH บล็อกทั้งหมด stake ทำ "การโจมตี" อย่างลับ ๆ นี้ได้ถูกอธิบายในการศึกษา "โจมตีการตรวจสอบที่ไม่สามารถแสดงตัว" ใน L2 โปรโตคอลที่ใช้ fraud proof (https://ethresear.ch/t/non-attributable-censorship-attack-on-fraud-proof-based-layer2-protocols/6492) ในกรณีนี้ ผู้โจมตีที่มี 1/3 ของ ETH บล็อก stake สามารถหยุดการยืนยันบล็อกใด ๆ ที่พวกเขาไม่ชอบ หากผู้โจมตีดำเนินการโหวตในบล็อกทั่วไปพร้อมกับการเก็บเงินสงวนของ fraud proof ไว้ เขาอาจยืนยันรากผลผลิตที่เลวร้ายและขโมยเงินจาก Optimistic Rollup นี่เรียกว่าการโจมตีการตรวจสอบที่ไม่สามารถแสดงตัวใน L2 ที่ใช้ fraud proof มีความยากที่จะตรวจหามากกว่าการได้รับมากกว่า 2/3 ของ stake และควบคุมบล็อก ETH ทั้งหมด

การโจมตีที่ใช้การตรวจสอบเป็นพื้นฐานยากต่อการจัดการในระดับ Rollup เนื่องจากมันเกิดขึ้นในเลเยอร์โปรโตคอลของ Ethereum และต้องการการปรับปรุงใน Ethereum ด้วยเช่นกัน อย่างไรก็ตาม Rollup สามารถนำเสนอกลยุทธ์บางอย่างในช่วงเวลานี้

3.5 วิธีการแก้ปัญหา #2: การถอนเงินภายใน 7 วันค่าเครือข่ายเวลาแฝงและการกู้คืนโจมตี 51% อัตโนมัติ

เพื่อรับมือกับโจมตีเวกเตอร์เหล่านี้ โอพติมิสติก โรลลัพเป็นวิธีการที่กำลังใช้งานในขณะนี้ มีการเลื่อนเวลาถอนเงินเป็นเวลา 7 วัน ค่าเครือข่ายเวลาแฝงนี้ถูกเสนอขึ้นโดยวิทย์ลิก และเป็นระยะเวลาที่พอดีสำหรับการต่อต้านการโจมตีด้วยการตรวจสอบ

เรามาวิเคราะห์ว่าช่วงเวลา 7 วันของ Optimistic Rollup มีพอที่จะป้องกันการโจมตีด้านการตรวจสอบหรือไม่ โดยจะพิจารณาการตรวจสอบที่มี 2 ประเภท: การโจมตีตรวจสอบที่อ่อนแอและการโจมตีตรวจสอบที่แข็งแกร่ง

สำหรับการตรวจสอบที่อ่อนแอ ที่เราสามารถใช้การคำนวณความน่าจะเป็นเพื่อดูว่าในระยะเวลา 7 วัน การให้ Optimistic Rollup สามารถต้านการโจมตีจากการตรวจสอบได้หรือไม่ นั้นเกี่ยวข้องกับการคำนวณความน่าจะเป็นของความสำเร็จของการตรวจสอบผู้ตรวจสอบในการโจมตีการคัดค้านการศึกษาธุรกิจ Rollup เมื่อคำถามการศึกษาธุรกิจที่โกหก

ที่นี่จำเป็นต้องพิจารณาสองปัจจัย:

  1. เพื่อให้สามารถทำการโต้แย้งสำเร็จภายใน 7 วัน จำเป็นต้องมีการทำธุรกรรมสำเร็จหลายครั้ง

ในโปรโตคอลส่วนใหญ่ หากมีเพียงธุรกรรมเดียวจากผู้เข้าร่วมอย่างซื่อสัตย์ถูกนำเข้าไปในสัปดาห์นี้ การสงสัยก็จะไม่ประสบความสำเร็จ จึงจำเป็นต้องคำนวณความน่าจะเป็นที่ธุรกรรมทั้งหมดที่ต้องการส่งfraud proof ไปภายใน 7 วัน ถูกนำเข้า

  1. จำเป็นต้องสมมติสมเหตุสมผลอัตราส่วนของผู้ตรวจสอบความถูกต้องที่เกี่ยวข้องในการตรวจสอบ ในปัจจุบัน ส่วนใหญ่ผู้สร้างบล็อกในชุมชน ETH (ที่รู้จักโดยทั่วไปว่ามีการจัดการที่เป็นศูนย์กลาง) ยังไม่ได้รับการตรวจสอบ โดยพิจารณาจากอัตราส่วนของผู้ที่มีการมัดจำโดยเดี่ยวบนชุมชน ETH จะเห็นว่ามีโอกาสที่ผู้ตรวจสอบความถูกต้องจะร่วมกันกบเป็นเท่ากับศูนย์ (เช่น 99.9%) เกือบจะไม่มีโอกาสที่จะร่วมกับกันในการตรวจสอบ

(การตรวจสอบโดยผู้สร้างบล็อกหลักของ ETH | ที่มา: ทวีตของ Justin Drake)

ด้วยการพิจารณาสองปัจจัยนี้ หากเราสมมติว่าผู้ตรวจสอบความถูกต้อง 99.5% (ซึ่งยังคงเป็นสมมติที่มากเกินไป) เข้าร่วมกระบวนการตรวจสอบและคำนวณความน่าจะเป็นของโปรโตคอลที่ต้องการคัดค้านการทำธุรกรรมแลกเปลี่ยน 30-40 ครั้งของผู้เข้าร่วมที่ซื่อสัตย์ แล้วในทุกๆ กรณีโอกาสที่จะประสบความสำเร็จใกล้เคียงกับ 100% อย่างไรก็ตาม ด้วยการปรากฏของแนวทางการแก้ไขในอนาคต (เช่นการเพิ่มเข้าไปในรายการหรือผู้เสนอข้อเสนอหลายคนพร้อมกัน เช่น BRAID, APS + FOCIL) ความสามารถในการต้านการตรวจสอบอาจเพิ่มขึ้นอีก ซึ่งจะลดความเสี่ยงที่ Optimistic Rollup จะสูญเสียเงินของผู้ใช้เนื่องจากการตรวจสอบที่อ่อนไหว

ดังนั้น ในกรณีที่มีการตรวจสอบอย่างเข้มงวด 7 วันเพียงพอหรือไม่? การโจมตีด้วยอัตราส่วน 51% ที่ถูกกล่าวถึงได้รับการแก้ไขเฉพาะผ่านการแยกแยะทางสังคม (Fork) เท่านั้น การโจมตีที่ไม่สามารถพิสูจน์ต้นเหตุได้ยิ่งยาก และไม่สามารถป้องกันได้ด้วยวิธีการออกแบบที่อ่อนแอต่อการตรวจสอบ (เช่นการรวมเข้าไปในรายการ)

มีข้อเสนอเพื่อพัฒนาเครื่องมือกู้คืนการโจมตี 51% อัตโนมัติบางส่วนในซอฟต์แวร์ไคลเอ็นต์ ซึ่งตั้งอยู่บนโครงสร้างที่ Vitalik 提出的结构 ในกรณีที่เกิดการโจมตี 51% เรียกคืน นักวิจัย ETH ได้พัฒนาโซลูชันตรวจสอบการตรวจสอบเชิงวิเคราะห์นี้เป็นสองขั้นตอน:

  1. ไคลเอนต์แสงตรวจสอบ mempool เพื่อตรวจสอบว่าธุรกรรมบางอย่างไม่ได้รวมอยู่ในบล็อกนานเกินไปหรือไม่
  2. หากธุรกรรมที่ระบุไม่ได้รวมอยู่ในบล็อกเป็นเวลาหนึ่งวันในห้องรอการดำเนินการ จะเป็นเหตุให้ปุ่ม 'คุณตกลงที่จะ Fork ทางสังคมหรือไม่?' ถูกเรียกขึ้น ซึ่งอนุญาตให้ชุมชนเริ่มต้น Fork แบบ Hard โดยอิงจากความเห็นนี้

ถ้าเครื่องมือนี้ตรวจพบการโจมตี 51% ขั้นตอนถัดไปคือการ Fork ทางสังคมเพื่อย้ายไปยัง on-chain ใหม่เพื่อทำให้เงินทุนของผู้โจมตีไม่มีประสิทธิภาพ

ในสถานการณ์นี้เงินทุนที่ได้รับผลกระทบจากการโจมตี 51% จะต้องเก็บไว้ในสถานะล็อคจนกว่าการ Fork ทางสังคมจะเสร็จสิ้น ในช่วงเวลาที่ฮาร์ดฟอร์ค The DAO เหตุการณ์ที่คล้ายกันเกิดขึ้นและเงินทุนของแฮ็กเกอร์ถูกล็อคไว้ใน DAO ลูกของเขาเป็นเวลา 27 วันจนกว่าพวกเขาจะสามารถถอนเงินได้ ในช่วงเวลานั้นชุมชน ETH ฮาร์ดฟอร์คสำเร็จและป้องกันแฮ็กเกอร์ไม่ให้ถอนเงินได้ (สำหรับรายละเอียดเพิ่มเติมโปรดดูที่โพสต์ของ Vitalik บน Reddit: https://www.reddit.com/r/ethereum/s/zQw1YOnomE)

กล่าวอีกนัยหนึ่งว่า แม้จะเกิดการโจมตี 51% ก็ตาม ทุนต้องถูกล็อกไว้จนกว่าจะมีการ Fork ทางสังคม ในกรณีนี้ ระยะเวลาถอนเงิน 7 วันใน Optimistic Rollup จะเป็นเขตรับโล่ซึ่งหากไม่มีการ Fork ทางสังคมภายในสัปดาห์นี้ ทุนผู้ใช้ใน Optimistic Rollup อาจถูกขโมย หรือถูกถอนเข้ากระดานเทรดคริปโตแบบรวมศูนย์ หรือผ่าน Tornado Cash ในที่สุดก็ทำให้ทุนมีโอกาสกลับมายากมากหลังจาก Fork ทางสังคมเกิดขึ้น

โดยสรุปมากก็คือ การถอนเงิน 7 วันใน Optimistic Rollup อย่างเป็นทางการถูกสร้างขึ้นเพื่อรับมือกับการตรวจสอบที่อ่อนแอ แต่ในความเป็นจริง โอกาสที่จะเกิดการตรวจสอบที่อ่อนแอนั้นไม่มาก และเวลา 7 วันนี้ก็เป็นเวลาสำหรับการระมัดระวังเมื่อมีการ Fork ทางสังคมที่เกิดขึ้นในกรณีที่ต้องการตรวจสอบที่แข็งแกร่ง

จากมุมมองนี้ มีผู้วิจารณ์ที่ตำหนิ OPFP ที่ย่อระยะเวลานี้เหลือ 3.5 วันทำให้เป็นเป้าหมายของการโจมตีการตรวจสอบที่แข็งแกร่งมากขึ้น แต่วิจารณ์เช่นนั้นไม่มีหลักฐานที่ชัดเจน โดยเนื่องจาก Optimism ยังอยู่ในขั้นตอนที่ 1 ผู้ดูแลรักษามีเวลาเพียงพอในการตรวจสอบความถูกต้องของรากสถานะและการถอนเงินสามารถทำได้เมื่อหมดเวลาตรวจสอบเพิ่มเติม 3.5 วัน ดังนั้น แม้ว่าจะมีการโจมตีการตรวจสอบที่แข็งแกร่งแต่ผู้โจมตีจะต้องรอเป็นเวลา 7 วันก่อนที่จะสามารถถอนเงินได้ นอกจากนี้ ผู้โจมตียังต้องตรวจสอบธุรกรรมที่เกี่ยวข้องกับคำถามทั้งหมดในช่วงเวลาสัปดาห์เดียวกันเพื่อป้องกันไม่ให้ผู้ดูแลรักษายกเลิกการยืนยันที่ผิดปกติ

อย่างไรก็ตาม สิ่งสำคัญคือ ETH จะต้องมั่นใจว่าสามารถดำเนินการ Fork ทางสังคมในระยะเวลา 7 วัน ซึ่งหมายความว่าเครือข่ายเวลาแฝง 51% ต้องพร้อมและต้องมีการศึกษาและจำลองอย่างถูกต้องเพื่อหาว่าสามารถดำเนินการ Fork ทางสังคมได้ในระยะเวลา 7 วันหรือไม่ เพียงแค่ในกรณีนี้เท่านั้น การถอดรหัสระบบชำนาญเพื่อถอนเงินในระยะเวลา 7 วันใน Optimistic Rollup จึงถือว่าเป็นการป้องกันที่มีผล

3.6 โจมตีเวกเตอร์ #3: การโจมตีเวกเตอร์:การใช้ช่องโหว่ในระบบการพิสูจน์ภัยคุ้มครองจากการฉ้อโกง

ส่วนใหญ่ของคำถามเกี่ยวกับโปรโตคอลเกิดจากการทำให้ผู้เข้าร่วมพบจุดที่เฉพาะเจาะจง (คำสั่งหรือบล็อก) ที่ทำให้ความคิดของพวกเขาไม่ตรงกัน และจึงทำให้เกิดการสร้างการพิสูจน์ที่แสดงให้เห็นว่าความเคารพของผู้เข้าร่วมอีกคนหนึ่งนั้นผิดพลาด โครงสร้างที่ใช้สร้างการพิสูจน์นี้เป็นเครื่องจำลองที่เรียกว่า fraud proof เครื่องจำลอง (Fraud Proof VM) และซอฟต์แวร์ที่ใช้สร้างการพิสูจน์บนเครื่องจำลองนี้เรียกว่าโปรแกรม (program) โปรโตคอลแต่ละรายใช้ fraud proof เครื่องจำลองและโปรแกรมที่แตกต่างกัน ดังต่อไปนี้:

ทุกระบบการป้องกันการปลอมแปลงจะต้องการพิสูจน์ว่าผลลัพธ์การดำเนินการที่เฉพาะเจา EVM บางอย่างถูกต้องใน on-chain อย่างไรก็ตาม ถ้าระบบ (ไม่ว่าจะเป็นเครื่องจำลองหรือโปรแกรม) มีข้อบกพร่อง จะเกิดอะไรขึ้น

ปัญหานี้สามารถถูกพิจารณาเนื่องจาก ค้นพบใน OVM โจมตีเวกเตอร์โดย Yoav Weiss ซึ่งทำให้การโจมตีเป็นไปได้เนื่องจากช่องโหว่ในการย้อนกลับของ OVM แต่สร้าง "การทำธุรกรรมทุจริต" เป็นสิ่งสำคัญสำหรับการทำโจมตี การทำธุรกรรมทุจริตคือการกระทำที่ถูกดำเนินการตามปกติบน Rollup แต่การถูกสงสัยโดยเครื่องจำลองและโปรแกรมจะนำไปสู่ผลลัพธ์ที่แตกต่าง ซึ่งการสร้างการทำธุรกรรมทุจริตหมายความว่ามีช่องโหว่ในระบบfraud proof เนื่องจากระบบfraud proof ควรจะสร้างผลลัพธ์เหมือนกับ EVM ดังนั้นการสามารถสร้างการทำธุรกรรมทุจริตหมายความว่ามีช่องโหว่ในระบบfraud proof

Yoav ค้นพบช่องโหว่หลายรายการในระบบ fraud proof ของ OVM และสามารถจำลองการโจมตีนี้ผ่านการสร้างธุรกรรมทุจริต ตัวอย่างการโจมตีที่เขาค้นพบคือ: ใน StateManager ของ OVM, รหัสการดำเนินงาน SSTORE และ SLOAD (ที่ใช้เพื่อจัดเก็บและอ่านสถานะ) ค่า แก๊ส ถูกบันทึกผิดพลาด นี่หมายความว่าธุรกรรมใด ๆ ที่จัดเก็บหรืออ่านค่าในสัญญา (เกือบทุกธุรกรรม ยกเว้นการโอน ETH ที่เรียบง่าย) ในกระบวนการโต้แย้งจะถูกทำเครื่องหมายว่าเป็นธุรกรรมทุจริต แม้ว่ามันจะดำเนินการถูกต้องบน Rollup

สรุปได้ว่า หากมีช่องโหว่ในระบบ การเปลี่ยนสถานะที่ถูกต้องอาจถูกทำเครื่องหมายว่าไม่ถูกต้องในช่วงเวลาของการถาม นำไปสู่ผลลัพธ์ที่ถูกต้องที่สุดของผู้เข้าร่วมที่ส่งผลลัพธ์

นี่เป็นหนึ่งในเหตุผลที่ OP Mainnet เพิ่งเปลี่ยนระบบพิสูจน์ความผิดจากโมเดลที่ไม่ได้รับอนุญาตเป็นระบบที่ผู้เข้าร่วมที่ได้รับอนุญาตเท่านั้นที่สามารถเข้าร่วมได้ หลังจาก OPFP ถูกนําไปใช้กับ Mainnet การตรวจสอบความปลอดภัยได้เปิดเผยช่องโหว่หลายประการในระบบพิสูจน์การฉ้อโกง (Cannon และ op-program) และโปรโตคอลความท้าทายของเกมที่ถกเถียงกัน เพื่อป้องกันไม่ให้ระบบถูกใช้ประโยชน์ Optimism ประกาศเมื่อวันที่ 17 สิงหาคมว่าจะเปลี่ยนไปใช้ระบบสิทธิ์

แน่นอนว่าใช้ช่องโหว่ของเครื่องจำลองอาจไม่มีผลกระทบมากต่อ Rollup ในระยะเวลาที่ 0 หรือระยะเวลาที่ 1 เนื่องจากคณะกรรมการด้านความปลอดภัยสามารถแทรกแซงเมื่อไรก็ได้เพื่อแก้ไขผลลัพธ์ที่ถูกสงสัยได้ นี่เป็นข้อเท็จจริงที่ OP Labs เคยเสนอมาก่อน ในความเป็นจริง OP Labs ได้แบ่งปันกรอบการตรวจสอบของตนในฟอรัม Optimism ซึ่งอธิบายถึงเกณฑ์ในการตรวจสอบภายนอกในสถานการณ์ใดบ้าง

(OP Labs Audit Framework | ที่มา: [Optimism Forum] (https://gov.optimism.io/t/op-labs-audit-framework-when-to-get-external-security-review-and-how-to-prepare-for-it/6864))

ในกรอบนี้ สถานการณ์ล่าสุดอยู่ในโควดที่สี่: "ยืนยันความผิดพลาดในขั้นตอนการช่วยเหลือ" แม้ว่าสถานการณ์เหล่านี้เกี่ยวข้องกับความปลอดภัยของโซน แต่ไม่มีผลต่อเงินของผู้ใช้โดยตรง ดังนั้นไม่รวมอยู่ในขอบเขตการตรวจสอบ นี่หมายความว่าแม้แต่จะมีการใช้ช่องโหว่ คณะกรรมการด้านความปลอดภัยยังสามารถแก้ไขผลลัพธ์

แต่ตอนนี้ที่เรารู้ว่ามีช่องโหว่ จำเป็นต้องแก้ไขปัญหาเหล่านี้ Optimism ได้แก้ไขปัญหาเหล่านี้ในการอัปเกรดเครือข่าย Granite ของมัน ทำให้ OP Mainnet สามารถกลับมาสู่ระยะ 1 ได้

อย่างไรก็ตาม ความผิดพลาดในระบบอาจเป็นอันตรายใน Rollup ของเวร 2 ในขณะเดียวกัน ในเวร 2 คณะกรรมการด้านความปลอดภัยสามารถแทรกระหว่างเฉพาะเมื่อมีหลักฐานบนโซน "on-chain" อย่างไรก็ตาม หากเกิดข้อผิดพลาดใน Rollup ของเวร 2 การเงินของผู้ใช้อาจเผชิญกับความเสี่ยง

3.7 วิธีการแก้ปัญหา #3: พิสูจน์หลายรายการ

เพื่อป้องกันปัญหาชนิดนี้ การตรวจสอบรายละเอียดก่อนที่จะนำโค้ดไปสู่การใช้งานเป็นสิ่งสำคัญ อย่างไรก็ตาม การเครื่องจำลองและโปรแกรมที่ซับซ้อนเป็นระบบซอฟต์แวร์ที่ซับซ้อน โดยทำให้มีโอกาสที่จะพบข้อบกพร่องมากขึ้น ดังนั้น แม้ว่าจะผ่านการตรวจสอบอย่างเคร่งครัด ข้อบกพร่องก็ยังอาจเกิดขึ้น เราจึงต้องการสำรวจกลยุทธ์ที่เพิ่มเติมนอกเหนือจากการตรวจสอบ

หนึ่งวิธีคือการใช้ระบบพิสูจน์หลายระบบในระบบเดียวกัน ในขั้นตอนการเสนอข้อโต้แย้ง ระบบไม่ได้ใช้เพียงระบบเดียวเพื่อสร้างข้อพิสูจน์การทุจริต แต่สามารถใช้เครื่องจำลองและโปรแกรมที่แตกต่างกันพร้อมกันเพื่อสร้างข้อพิสูจน์การทุจริตหลายรายการ แล้วเปรียบเทียบผลลัพธ์ นี้จะสร้างระบบที่ปลอดภัยแม้กระทั่งเกิดช่องโหว่

ตัวอย่างเช่น สมมติว่ามีระบบพิสูจน์ภาพหลายระบบที่ใช้ Optimism Cannon และ asterisc ZK เครื่องจำลอง (ใช้ Risc-V) พร้อมกัน หากมีคำถาม จะเกิดสถานการณ์ต่อไปนี้:

  1. หากพบข้อผิดพลาดในการออกพิสูจน์ ผู้โจมตีจะสร้างคําถามและเริ่มต้นวิธีการแบ่งครึ่ง
  2. หลังจากที่ใช้วิธีการแบ่งออกเป็นสองส่วนเพื่อค้นหาบล็อกที่แตกต่างกัน จะเกิดเกมย่อยสองเกมพร้อมกัน

เกมย่อยของ Cannon ที่ใช้วิธีการ OPFP แบบดั้งเดิม ใช้ asterisc สร้างเกมย่อยของ ZK ในการสร้างหลักฐานของความเสียหาย

  1. หลังจากเสร็จสิ้นการเล่นเกมสองรอบ จะทำการยืนยันการทุจริตของสองรูปแบบที่แตกต่างกัน

หากการพิสูจน์สองรายการผ่านการตรวจสอบทั้งคู่ ผู้เสียหายจะชนะ แต่หากการพิสูจน์สองรายการไม่ผ่านการตรวจสอบทั้งคู่ ผู้เสียหายจะพ่ายแพ้ อย่างไรก็ตามหากมีการผ่านการตรวจสอบไปแล้วและอีกตัวหนึ่งไม่ผ่านการตรวจสอบ นั้นหมายความว่ามีช่องโหว่ที่ไม่คาดคิดเกิดขึ้นในขั้นตอนการสร้างพิสูจน์บางชนิดหรือโปรแกรม

ในกรณีนี้หน่วยงานต่างๆเช่นคณะกรรมการรักษาความปลอดภัยจะก้าวเข้ามาเพื่อปรับผลลัพธ์ของความท้าทาย สิ่งนี้ทําให้มั่นใจได้ว่าระบบสามารถปราศจากข้อผิดพลาดโดยไม่ละเมิดเงื่อนไขที่คณะกรรมการรักษาความปลอดภัยสามารถแทรกแซงได้เฉพาะในกรณีที่มีช่องโหว่ที่พิสูจน์ได้บนเครือข่ายเท่านั้น

นี่เป็นหนึ่งในความพยายามในการทำให้ Optimism เข้าสู่ขั้นตอนที่ 2 โดย OPFP เกี่ยวข้องกับเกมข้อพิพาทที่เป็นโมดูล ที่อนุญาตให้มีการประยุกต์ใช้ระบบ fraud proof หลายระบบได้และกำหนดอินเตอร์เฟสขั้นต่ำเพื่อรองรับสิ่งนี้

4. การปรับปรุงที่เป็นไปได้

ในบทที่ผ่านมาเราได้สำรวจการออกแบบโปรโตคอล Optimistic Rollup และช่องโหว่ที่อาจเกิดขึ้นในกระบวนการเชื่อมต่อและการตรวจสอบ fraud proof ของมัน ในส่วนนี้เราจะพูดถึงปัญหาและวิธีการแก้ไขของแต่ละโปรโตคอลรวมถึงระบบ fraud proof และการมองโภคที่ยังไม่มีข้อจำกัดของ Optimistic Rollup

4.1 พื้นที่การปรับปรุงของโปรโตคอลแต่ละรายการ

1) Arbitrum BoLD

BoLD มีโปรโตคอลที่มั่นคงเศรษฐกิจ โปรโตคอลโดยมีการ ค่าเครือข่ายเวลาแฝง สูงสุดในหนึ่งสัปดาห์และตรวจสอบว่าสามารถป้องกันการโจมตี Sybil ได้อย่างมีประสิทธิภาพก่อนที่เงินของผู้โจมตีจะเกินผู้ป้องกัน 6.5 เท่า อย่างไรก็ตาม BoLD ยังมีปัญหาสองปัญหาสำคัญ:

  • 6.5 เท่าของสัดส่วนทรัพยากรเป็นข้อดีที่เล็กเกินไปสำหรับผู้ป้องกัน
  • ยอดฝากมัดจำสำหรับการยื่นคำแถลงทางรากฐานคือ 3,600 ETH จำนวนนี้มากเกินไป

ปัญหาแรกสามารถแก้ไขได้โดยใช้เทคโนโลยี ZK ค่ะ BoLD แบ่งคำถามออกเป็นหลายระดับเพื่อลดทรัพยากรที่ต้องใช้ในการคำนวณความสัมพันธ์ในอดีต ด้วยการใช้ ZK สามารถลดลงไปเหลือระดับเดียว

คอนเซปต์นี้คล้ายกับคำแนะนำ BoLD++ ที่ Gabriel ของ Cartesi 提出 (https://ethresear.ch/t/fraud-proofs-are-broken/19234) ของ Cartesi โดย Gabriel แนะนำ ว่า เมื่อการโจมตีถูกแบ่งออกเป็นหลายระดับ การเพิ่มส่วนขยายจะทำให้ขนาดเงินมัดจำระดับสูงสุดเพิ่มขึ้นอย่างเร็วเป็นพุ่งขึ้น อย่างไรก็ตาม เมื่อใช้ระดับเดียว การเพิ่มส่วนขยายจะง่ายขึ้น ทำให้โปรโตคอลสามารถต้านการโจมตีแบบ Sybil ได้มากขึ้น

ปัญหาที่สองซึ่งต้องใช้เงินฝาก 3,600 ETH นั้นยากที่จะแก้ไข ขนาดเงินฝากของ BoLD ไม่เพียง แต่จะจัดการกับการโจมตีของ Sybil เท่านั้น แต่ยังเพื่อยับยั้งค่าเครือข่ายเวลาแฝงการโจมตี ขนาดเงินฝากเป็นฟังก์ชันของ TVL (Total Locked Value) และไม่สามารถเพิ่มขึ้นอย่างมีนัยสําคัญได้แม้กับ ZK เพื่อแก้ปัญหานี้ BoLD กําลังใช้กลไกการปักหลักการรวมการขุดที่ช่วยให้ผู้เข้าร่วมหลายคนสามารถแบ่งปันเงินเดิมพันได้

2) คาร์เทซี่เดฟ

Dave ได้รับการป้องกันโจมตี Sybil อย่างมีประสิทธิภาพด้วยโครงสร้างการแข่งขันของเขา แต่เหมือนที่กล่าวไว้ก่อนหน้านี้ มันยังต้องเผชิญกับค่าเครือข่ายเวลาแฝงที่สามารถโจมตีได้ง่าย ๆ สูงสุดของเวลาแฝงในเครือข่ายคือฟังก์ชันที่รวมจำนวนของคำประกาศที่เป็นสมควรและจำนวนระดับ stake L ซึ่งสามารถคำนวณได้โดยใช้สูตรดังนี้: Td = 7 x [log2(1 + NA)]L (วัน)

ถ้า NA = 7 และ L = 3 โปรโตคอลอาจเผชิญกับค่าเครือข่ายเวลาแฝงนานถึงสี่เดือน ซึ่งจะทำให้ผู้ใช้เป็นอันมากและเสียหาย เนื่องจากการถอนเงินจะต้องเผชิญกับค่าเครือข่ายเวลาแฝง

ZK สามารถช่วยลดปัญหานี้ โดยการตั้งค่าระดับ L ให้เป็น 1 (เช่นใน BoLD++ บรรทัดนั้น) เวลาที่ชะลอสุงสัยสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสายสาย Td = 7 x log2(1 + NA) (วัน)

รายงานว่า Cartesi กำลังใช้เทคโนโลยี ZK ของ RISC Zero เพื่อปรับปรุงนี้ อย่างไรก็ตามยังมีความกังวลว่าการปรับปรุงนี้จะเพียงพอในการป้องกันการโจมตีค่าเครือข่ายเวลาแฝงได้อย่างสมบูรณ์แบบหรือไม่ หาก NA = 7 โปรโตคอลยังคงมีโอกาสเผชิญกับการล่าช้าเพิ่มเติมของค่าเครือข่ายเวลาแฝงนานถึงสองสัปดาห์ ในขณะที่ค่าใช้จ่ายของผู้โจมตีเพียงแค่การมัดจำ 7 ETH และค่า Gas และค่าใช้จ่ายในประวัติศาสตร์เชื่อมโยงภายนอกเท่านั้น สำหรับเครือข่ายที่มีค่าตำแหน่งล็อคอัพสูง ๆ การลงโทษนี้อาจไม่เพียงพอที่จะขู่ความการโจมตีค่าเครือข่ายเวลาแฝงได้

(Dave: กลไกการตั้งคําถามย่อยด้วยสไตล์ BoLD |.) ที่มา: [L2Beat Medium] (https://medium.com/l2beat/fraud-proof-wars-b0cb4d0f452a))

มีคำแนะนำให้เดฟใช้กลไกการถามคำถามแบบ BoLD โดยมีการแข่งขัน 8 ผู้เข้าร่วมในแต่ละรอบแทนการแข่งขัน 1 คู่ คล้ายกับการแข่งขันแบบเชิงพิพิธภัณฑ์ ในกรณีนี้ คำนวณเวลาตอบสนองคือ ค่าเครือข่ายเวลาแฝง

Td = 7 x log8 (1 + NA) (วัน)

ในโครงสร้างนี้ ผู้โจมตีจำเป็นต้องมีเงินมาร์จิ้นอย่างน้อย 64 ETH เพื่อโจมตีค่าเครือข่ายเวลาแฝงมากกว่าสองสัปดาห์ ความต้องการมาร์จิ้นรวมทั้งกันคือ 64 ETH และต้องรับผิดชอบต้นทุนอย่างมากในระบบ on-chain และ off-chain

อย่างไรก็ตาม ข้อเสียของวิธีนี้คือ การทำให้ผู้ป้องกันสูญเสียความได้เปรียบในการต่อสู้กับการโจมตี Sybil แม้ว่า BoLD จะให้โครงสร้างที่ทำให้ผู้ป้องกันมีความได้เปรียบ N เท่ากับผู้โจมตี แต่ Dave ก็สร้างวิธีที่ทำให้ผู้ป้องกันมีความได้เปรียบกว่าผู้โจมตีอย่างมาก

โดยสรุป Dave สามารถ จํากัด เวกเตอร์ของค่าเครือข่ายเวลาแฝงได้อย่างมีประสิทธิภาพโดยใช้หลักฐานการฉ้อโกง ZK ในขณะที่การใช้โครงสร้างคล้าย BoLD สามารถปรับปรุงความต้านทานต่อค่าเครือข่ายเวลาแฝง การโจมตี ซึ่งอาจนําไปสู่ความได้เปรียบสําหรับกองหลังเมื่อเผชิญกับการโจมตีของ Sybil

3)หลักฐานความผิดพลาดในแง่ดี (OPFP)

ข้อเสียของ OPFP คือ มีความเป็นไปได้ที่จะถูกโจมตีจากฝ่าย Sybil เนื่องจากต้นทุนของผู้โจมตีและผู้ป้องกันเท่ากัน OP Labs ได้提出แนวทางการแก้ไขปัญหานี้ใน Dispute Game V2

ในขณะที่ OPFP เดิมต้นให้มาร์จิ้นทุกครั้งที่มีการแบ่งเป็นสองส่งมาร์จิ้นในจุดเริ่มต้นของการแบ่งสาขา ส่วน V2 ของเกมที่เกี่ยวข้องเพียงต้องการผู้เข้าร่วมที่จะส่งมาร์จิ้นตอนที่การแบ่งสาขาเริ่มต้น นอกจากนี้ V2 ของเกมที่เกี่ยวข้องยังนำเข้าวิธีการแบ่งสาขาที่อนุญาตให้ผู้เข้าร่วมส่งคำขอหลายคำขอพร้อมกันที่จุดแบ่ง ซึ่งส่งผลให้ลดจำนวนการโต้ตอบในส่วนใหญ่ของกรณี

(ประกาศสาขาในเกมที่โต้แย้ง V2 | แหล่งที่มา: Optimism Specs GitHub)

ใน OPFP ก่อนหน้านี้ มีเวกเตอร์ที่โจมตี Sybil คือ:

  1. สร้างคำถามจำนวนมากเพื่อเบี่ยงเบนมาร์จิ้นและค่า Gas ของผู้ป้องกัน
  2. การส่งผลลัพธ์ปลอมๆ อย่างต่อเนื่อง เพื่อทำให้ผู้ป้องกันต้องตอบสนองและใช้ทรัพยากรหมดไป

การเปิดตัวคำปฏิเสธแก้ไขปัญหาสองประการ คือ อย่างแรก ผู้เข้าร่วมที่ซื่อสัตย์ไม่ต้องส่งมาร์จิ้นเพิ่มเติมในขั้นตอนการแบ่งสามารถ ในขณะที่ผู้สงสัยที่ไม่ซื่อสัตย์ต้องมีการส่งมาร์จิ้นสำหรับทุกคำปฏิเสธใหม่ที่พวกเขาสร้างขึ้น หากจำนวนเงินมาร์จิ้นถูกต้องการสร้างคำปฏิเสธอย่างมากจึงไม่สามารถทำได้

นอกจากนี้ในเกมที่เกี่ยวข้องมารจิ้นระดับสูงมีมูลค่ามากกว่าทำให้ต้นทุนของการส่งผลลัพธ์เท็จโดยต่อเนื่องสูงกว่าผู้ป้องกันสำหรับผู้โจมตี

ดังนั้น OPFP สามารถต่อต้านการโจมตีซิบิลได้อย่างมีประสิทธิภาพโดยการใช้คำปฏิเสธทางสาขาที่นำเข้าในเกมที่เกี่ยวข้อง V2

4) Kroma ZK การรับประกันความถูกต้อง (Kroma ZKFP)

Kroma ZKFP พบกับความอ่อนแอของการโจมตี Sybil และระบบพิสูจน์ที่ไม่สมบูรณ์ 2 ปัญหาใหญ่ ๆ ที่ Kroma ZKFP จะต้องแก้ไขเพื่อก้าวไปสู่ขั้นตอนที่ 1 คือ

  1. จุดเริ่มต้นของวิธีแบ่งครึ่งพิจารณาจากการส่งผลลัพธ์ครั้งสุดท้าย ไม่ใช่ผลลัพธ์ที่ถูกต้องล่าสุด
  2. ผู้ตรวจสอบความถูกต้องยังไม่ได้ทำการตรวจสอบว่าข้อสงสัยเกี่ยวกับข้อมูลจำนวนมากที่ถูกต้องหรือไม่

Kroma วางแผนที่จะเปลี่ยนจาก Halo2 zkEVM ของ Scroll เป็น Succinct SP1 zkVM เพื่อแก้ไขปัญหาเหล่านี้และก้าวไปสู่ขั้นตอนที่ 1

Kroma คาดว่าจะปรับปรุงกระบวนการที่พิสูจน์ข้อโต้แย้งของมันให้เข้ากันได้กับอินเทอร์เฟซเกมของ Optimism การปรับปรุงนี้อธิบายอย่างละเอียดใน มาตรฐานของ Kroma และจะอนุญาตให้จุดเริ่มต้นของการแบ่งส่วนเคลื่อนที่ไปยังผลลัพธ์ที่กำหนดไว้ในอีกหนึ่งสัปดาห์ก่อนหน้านี้เพื่อแก้ไขปัญหาแรก

สำหรับคำถามที่สอง Kroma จะใช้การอนุมัติที่ไม่มีความเชื่อมั่นที่ขึ้นอยู่กับ ZK วิธีการทำงานเป็นดังนี้:

(การอนุมัติไร้ความเชื่อถือโดยใช้การสร้างหลักฐานศึกษากฎหมายแบบไม่มีความสามารถในการโต้แย้งที่ไม่มีความเชื่อถือ | ที่มา: [Lightscale Notion] (https://www.notion.so/Complete-Trust-less-Derivation-for-Zero-Knowledge-Dispute-Game-bfaebd36375d48169424064237986dea?pvs=4))

ในการพิสูจน์ให้เห็นว่าบล็อก L2 ที่เฉพาะเจาะจง T ถูกดำเนินการอย่างถูกต้อง เราต้องตรวจสอบว่าข้อมูลธุรกรรมของบล็อก T ได้รับการสร้างอย่างถูกต้องโดยใช้ข้อมูลจำนวนมากใน L1 ก่อนที่จะสร้างการพิสูจน์ ZK

ที่นี่ Kroma ตั้งใจที่จะใช้การยืนยัน ZK เพื่อตรวจสอบว่าข้อมูลเป็นข้อมูลจำนวนมากที่ถูกดึงมาจาก L1 อย่างถูกต้องหรือไม่ หากข้อมูลถูกดึงมาจาก RPC ที่เชื่อถือได้ภายนอกของโปรแกรม ZK เท่านั้น ก็จะไม่สามารถยืนยันได้ว่าข้อมูลจำนวนมากถูกทำการเปลี่ยนแปลงหรือไม่ สามารถทำได้โดยการสร้างพิสูจน์ ZK ของความเชื่อมโยงของบล็อกแฮชเพื่อยืนยันว่าโปรแกรมได้เข้าถึงบล็อกที่ถูกต้องและดึงข้อมูลจำนวนมาก บล็อกเหล่านี้มาจากบล็อก O (ที่มาจาก L1 ของบล็อก T ของ L2) ไปยังบล็อก C (บล็อก L1 ที่ใช้สร้างข้อโต้แย้ง) หากผู้โต้แย้งสร้าง L2 บล็อก T จากข้อมูลจำนวนมากที่ผิด ผู้โต้แย้งที่ดึงข้อมูลจำนวนมากจะอ้างอิงไปที่บล็อกแฮชของ L1 ที่ไม่ตรงกันกับบล็อกแฮชที่เป็นจริงซึ่งมีข้อมูลจำนวนมาก (รวมถึง T1) และมันก็จะไม่เชื่อมต่อกับบล็อก C ดังนั้น แค่แต่ไม่มีความขัดแย้งของแฮช การยืนยันความเชื่อมโยงของบล็อก L1 จาก ZK สามารถพิสูจน์ได้ว่าผู้โต้แย้งได้สร้าง L2 บล็อกจากข้อมูลจำนวนมากที่ถูกต้อง

Kroma มีแผนที่จะใช้การยืนยัน ZK ของข้อมูลเป็นกลุ่ม เพื่อตรวจสอบความถูกต้องของการเชื่อมต่อบล็อกแฮชจาก L1 บล็อก O ถึง C หากมีผู้โต้แย้งสร้าง L2 บล็อก T จากข้อมูลเป็นกลุ่มที่ผิดพลาด แผนภูมิแฮช L1 ที่พวกเขาอ้างอิงจะแตกต่างจากบล็อก L1 ที่มีข้อมูลเป็นกลุ่มที่ถูกต้องและจะไม่เชื่อมต่อกับบล็อก C ด้วยเหตุนี้กระบวนการโต้แย้งสามารถยืนยันข้อมูลเป็นกลุ่มที่ถูกต้องได้โดยไม่มีความขัดแย้งในแฮช

ด้วยการปรับปรุงเหล่านี้ Kroma ZKFP สามารถเข้าสู่ขั้นตอน 1 ได้ อย่างไรก็ตามในการเข้าสู่ขั้นตอน 2 Kroma จำเป็นต้องมีวิธีการเสริมเพื่อป้องกันการโจมตีจาก Sybil ซึ่งรวมถึงการเปลี่ยนแปลงโปรโตคอลให้เป็น All-vs-All และการออกแบบกลไกมาร์จิ้นใหม่

4.2. สรุป

5. อนาคตของการพิสูจน์การทุจริต

5.1. ขั้นตอน 2 Rollup - ทุกทุนของคุณปลอดภัย

ตามที่กล่าวมาข้างต้น Optimistic Rollups กำลังเคลื่อนไหวไปสู่ขั้นตอนที่ 2 โดย Arbitrum กำลังพยายามเข้าใจขั้นตอนที่ 2 โดยใช้ BoLD แบบพื้นฐาน แผนการดำเนินงานที่เกี่ยวข้องกับ BoLD ได้ถูกเผยแพร่ไปใน เว็บบอร์ดการปกครอง และได้รับการสนับสนุนจำนวนมาก โดยปัจจุบันได้ถูกนำไปใช้งานในเครือข่ายทดสอบแล้ว หากไม่พบปัญหาด้านความปลอดภัยที่สำคัญ Arbitrum จะมีโอกาสที่จะใช้ BoLD เพื่อประสบความสำเร็จในการพัฒนาขั้นตอนที่ 2 ในช่วงปลายปี 2021

Optimism กำลังพยายามที่จะให้ OP Mainnet เข้าสู่ช่วงที่ 2 โดยต้องเสร็จสิ้นเกมข้อพิพาทเวอร์ชัน 2 และต้องมีการสนับสนุนจากหลายหลักฐานการพิสูจน์ แม้ว่ามาตรฐานจะยังไม่สมบูรณ์อยู่ แต่เกมข้อพิพาทเวอร์ชัน 2 ช่วยแก้ไขจุดอ่อนของ OPFP เดิมอย่างมีประสิทธิภาพ นอกจากนี้ยังมีทีมหลายทีมเช่น OP Labs, Succinct, Kroma และ Kakarot กำลังพัฒนาหลากหลายหลักฐานการพิสูจน์และลงทุนในการวิจัยเพื่อสร้างหลากหลายวิธีการพิสูจน์ใน OP Stack ดังนั้น ยกเว้นกรณีที่เกิดปัญหาร้ายแรง Optimism คาดว่าจะเข้าสู่ช่วงที่ 2 ในครึ่งปีหลัง

การเปลี่ยนแปลง Rollup สองอันนี้ไปสู่ขั้นตอนที่ 2 อาจส่งผลกระทบต่อระบบนิเวศ Rollup อย่างมาก อาร์บิตรัมและอ็อพติมิสซึมมีโครงสร้าง Rollup เอง คือ Arbitrum Orbit และ OP Stack ตามลำดับ การเปลี่ยนแปลงขั้นตอนที่ 2 ของพวกเขาหมายความว่า Rollup ที่ใช้โครงสร้างเหล่านี้ก็สามารถเปลี่ยนไปสู่ขั้นตอนที่ 2 ได้

ดังนั้น จากปลายปีนี้ถึงปีหน้า Rollup หลักที่มีฐานผู้ใช้มากที่สุด เช่น Arbitrum、OP Mainnet และ Base คาดว่าจะเข้าสู่ขั้นตอนที่ 2 และรับสืบทอดความปลอดภัยของ Ethereum อย่างสมบูรณ์ น่าจะสามารถขจัดความ批评ที่ว่า "Rollup เป็นหลายลายเซ็น" หรือ "Rollup สามารถยึดเงินของคุณได้ทุกเมื่อ" ได้อย่างมีประสิทธิภาพมากขึ้น

5.2. ZK fraud proofเป็นอนาคต

โปรโตคอลส่วนใหญ่ที่ถูกพูดถึงสามารถได้รับประโยชน์จากการปรับใช้ ZK fraud proof ตัวอย่างเช่นการใช้ ZK ใน Arbitrum BoLD สามารถเพิ่มอัตราส่วนของทรัพยากรเพื่อเพิ่มความต้านทานต่อการโจมตี Sybil ในขณะที่ Cartesi Dave สามารถทำให้มันยากต่อการโจมตีค่าเครือข่ายเวลาแฝงมากขึ้น OPFP กำลังพัฒนา ZK เพื่อสนับสนุนระบบพยากรณ์หลายรูปแบบซึ่งอาจลดจำนวนมาร์จิ้นและเพิ่มความปลอดภัยของโปรโตคอลได้

ควรทราบว่า ZK fraud proof ไม่ได้หมายความว่าการลดการโต้ตอบระหว่างผู้ตรวจสอบความถูกต้องเท่านั้น การโต้ตอบที่น้อยลงหมายความว่าทรัพยากรที่ต้องใช้ของผู้ตรวจสอบความถูกต้องลดลงอย่างมีนัยสำคัญ ทำให้มาร์จิ้นถูกปล่อย ซึ่งจะทำให้ผู้เข้าร่วมมากขึ้นสามารถเข้าร่วมโปรโตคอลได้มากขึ้น นอกจากนี้ยังลดค่าเครือข่ายเวลาแฝงสูงสุดและเพิ่มความปลอดภัยของโปรโตคอลโดยรวม

โดยวิธีนี้ ZK fraud proof เป็นสิ่งสำคัญในด้านความปลอดภัยและการกระจายอำนาจของ Optimistic Rollup

5.3. ZK Rollup ทำงานอย่างไร? การพิสูจน์การฉ้อโกงจะเสื่อมลงหรือไม่?

ในเวลานี้ อาจมีบางผู้อ่านที่อาจจะถามว่า: ถ้าการพิสูจน์การทุจริตและกลไกการโจมตีซับซ้อนขนาดนี้ ZK Rollups จะเป็นทางเลือกที่ดีกว่าหรือ ในบางกรณีนั้นถูกต้องหน่อย ใน ZK Rollups การเข้าสู่ขั้นตอนที่ 2 ไม่ต้องคิดถึงปัจจัยเศรษฐกิจที่ซับซ้อน ทุกสิ่งที่ผู้ใช้มีอยู่ในการตรวจสอบ L1 ไม่มีความเสี่ยงต่อการโจรกรรมเงินของผู้ใช้งาน และผู้ใช้งานสามารถถอนเงินได้ภายในไม่กี่ชั่วโมง

การเปลี่ยนจาก Optimistic Rollups เป็น ZK Rollups อาจเกิดขึ้นได้เร็วกว่าที่คาดหวัง เนื่องจากข้อเสียหลักของ ZK Rollups - ต้นทุนการสร้างพิสูจน์ที่สูงและเวลา - กำลังปรับปรุงอย่างรวดเร็ว ล่าสุด, Succinct Labs ได้เปิดตัว OP Succinct ซึ่งเป็นรุ่น ZK ที่พื้นฐานอยู่บน OP Stack ซึ่งให้กรอบการเริ่มต้น ZK Rollups อย่างง่ายดาย

แนะนํา OP รวบรัด | ที่มา: [Succinct Blog] (https://blog.succinct.xyz/op-succinct/)

อย่างไรก็ตาม ยังมีปัจจัยที่ต้องพิจารณาอีกหลายอย่าง ตัวอย่างเช่น ค่าใช้จ่าย ใน OP Succinct การสร้างบล็อกพิสูจน์มีค่าใช้จ่ายประมาณ $0.005-$0.01 ในขณะที่ค่าใช้จ่ายต่อเดือนของการเรียกดูพิสูจน์ โดยประมาณอยู่ที่ระหว่าง $6,480 ถึง $12,960 หากปริมาณการดำเนินการต่อวินาที (TPS) ของเชื่อมั่นเหล่านี้สูง ค่าใช้จ่ายเหล่านี้อาจเพิ่มขึ้นได้อีก

(ทุนพิสูจน์เครือข่ายแต่ละระบบเปรียบเทียบความสามารถ | ที่มา:บล็อกสรุป

ตัวอย่างเช่นบนเครือข่ายขั้นต่ำของ OP Succinct ค่าใช้จ่ายในการสร้างพิสูจน์เฉพาะกลุ่มในแต่ละบล็อกเฉลี่ยประมาณ 0.62 เหรียญสหรัฐ ด้วยตัวเลขนี้คำนวณได้ว่าค่าใช้จ่ายต่อเดือนจะถึง 803,520 เหรียญสหรัฐ นี้เป็นค่าใช้จ่ายเพิ่มเติมที่ Optimistic Rollups ไม่มี แม้ว่าต้นทุนของ ZK Rollups จะถูกปล่อย ค่าใช้จ่ายในการดำเนินงานของ ZK Rollups จะสูงกว่า Optimistic Rollups เสมอ

คำพิจารณาที่สองคือผลกระทบต่อการกระจายอำนาจ ใน ZK Rollups ผู้ตรวจสอบความถูกต้องจำเป็นต้องเรียกใช้โปรแกรมการพิสูจน์ที่ยากและมีค่าใช้จ่ายสูงกว่าการเรียกใช้โปรแกรมfraud proof ใน Optimisitic Rollups นอกจากนี้ เนื่องจากเวลาที่ใช้ในการสร้างพิสูจน์ในระบบ ZK ช้ามากผู้ใช้ไม่สามารถตรวจสอบธุรกรรมแบบเรียลไทม์ ถึงแม้มาตรฐานฮาร์ดแวร์ที่สูงขึ้นอาจช่วยเพิ่มความเร็วในการสร้างพิสูจน์เพื่อตรงกับความเร็วในการดำเนินการธุรกรรม แต่นี่หมายความว่าผู้เรียกใช้โปรแกรมการพิสูจน์จำเป็นต้องมีสภาพแวดล้อมการคำนวณที่มีมาตรฐานสูง ในสถานการณ์ที่เหมาะสม ใครก็สามารถเรียกใช้โหนดเพื่อให้แน่ใจถึงความปลอดภัยของโซ่ แต่ ZK ยังไม่ได้ระดับนี้

ในที่สุด ZK Rollups ซึ่งขึ้นอยู่บนคณิตศาสตร์และการเข้ารหัสที่ซับซ้อนมาก ความซับซ้อนนี้เกินกว่าขอบเขตของการป้องกันการประพฤติเสและการสงสัยในโปรโตคอล ดังนั้น ระบบ ZK ต้องผ่านการทดสอบอย่างแพร่หลายก่อนที่จะใช้งานในโหลดผลิต

Arbitrum กำลังมองหาโปรโตคอลผสมที่รวมเอาวิธีการ ZK และ Optimistic เข้าด้วยกันเป็นเป้าหมายสุดท้ายของมัน โปรโตคอลนี้ใช้งานเป็น Optimistic Rollup หลักและสร้างพิสูจน์ ZK เฉพาะเมื่อต้องการถอนเงินอย่างรวดเร็วเท่านั้น สิ่งนี้มีประโยชน์มากในสถานการณ์ที่ต้องการทรัพย์สินที่ต้องการปรับสมดุลระหว่างเครือข่ายอย่างรวดเร็ว (เช่น แลกเปลี่ยนหรือสะพานข้ามเครือข่าย) และยังช่วยให้เกิดความเข้ากันได้ระหว่างเครือข่าย

โดยสรุปว่าวิธี Optimistic Rollup ในปัจจุบันดูเหมือนจะมีประสิทธิภาพ พร้อมกับการใช้ ZK เป็นวิธีผสม แต่เมื่อต้นทุนและความเร็วในการสร้าง ZK พรูอีกครั้ง อาจจะมี Optimistic Rollups ที่มากขึ้นที่จะพิจารณาการเปลี่ยนเป็น ZK อย่างจริงจัง

5.4. fraud proof มีใช้กับ Rollup เท่านั้นหรือไม่?

เราได้ศึกษา Optimistic Rollups ของ Ethereum และกลไกการยืนยันการฉ้อโกงของมันแล้ว แล้วสิ่งที่ยืนยันการฉ้อโกงนี้สามารถนำไปใช้ประโยชน์ได้อย่างไรบ้าง?

  1. ฝากเงินอีกครั้ง โปรโตคอล stake การพิสูจน์การฉ้อโกงสามารถใช้งานได้แบบทั่วไปในโปรโตคอล stake โดยเฉพาะอย่างยิ่งในการบริการรีสเตคที่เป็นตัวแทนของ ETH บน Eigenlayer

Eigenlayer เป็นบริการที่อนุญาตให้ผู้ให้บริการ stake ETH หรือ LST ของผู้ใช้ใน Eigenlayer เพื่อเพิ่มความปลอดภัยของเครือข่าย Ethereum ผ่านการเลือก AVS (Active Verification Service) หลายรายการตามสัญญามอบอำนาจใน Eigenlayer ผ่านโปรโตคอล โดยผู้ให้บริการสามารถสร้าง AVS ได้อย่างง่ายดายและลดต้นทุนในการแนะนำผู้ตรวจสอบความถูกต้องเบื้องต้น

เช่นเดียวกับบล็อกเชนอื่น ๆ AVS จะมอบรางวัลให้กับผู้ดำเนินการที่ได้รับการตรวจสอบเรียบร้อยแล้วและต้องลงโทษในกรณีที่พวกเขากระทำการที่ไม่เหมาะสม นี่คือจุดที่ fraud proof สามารถใช้งานได้ใน Slashing process.

ตัวอย่างการ Slashing ของ AVS | ที่มา: Eigenlayer GitHub

เช่นบริดจ์ AVS บริดจ์ AVS มีเงื่อนไขว่าเงินของผู้ใช้ต้องถูกย้ายไปยังเป้าหมายโซนที่ถูกต้อง ผู้ประกอบการที่กระทำการซื้อขายที่ไม่เป็นธรรมจะถูกดำเนินการSlashing หากเกิดการกระทำที่ไม่เป็นธรรมนี้ ผู้เสี่ยงสร้างข้อโต้แย้งที่มีการโกหกในสัญญาการแก้ข้อโต้แย้ง กล่าวอ้างว่าผู้ประกอบการทำการบริดจ์อย่างไม่ถูกต้อง หากfraud proof ได้รับการพิจารณาว่าถูกต้อง AVS สามารถเรียกร้องสัญญาSlashing ใน Eigenlayer เพื่อระงับรางวัลของผู้ประกอบการใด ๆ

แม้ว่าฟังก์ชัน Slashing นี้ยังไม่ได้ถูกนำมาใช้ใน Eigenlayer อย่างเป็นทางการ แต่เมื่อเร็วๆ นี้พวกเขาได้ประกาศโมเดลความปลอดภัยที่แบ่งปัน และมีแผนที่จะรวมฟังก์ชัน Slashing ในรุ่นถัดไป ซึ่งจะทำให้สามารถใช้ fraud proof กับ Slashing ได้

  1. ชั้นความสามารถในการใช้ข้อมูล ** fraud proofสามารถใช้ได้ในเลเยอร์ของความสามารถในการใช้ข้อมูล (DA) โดยตัวอย่างที่เป็นตัวอย่างคือ ข้อเสนอและการปฏิบัติของ Celestia ในการสาธิตและการใช้fraud proof Celestia มีเทคโนโลยีที่อนุญาตให้light node ตรวจสอบการจัดเก็บข้อมูลว่าถูกต้องตามการใช้ข้อมูลหรือไม่ ให้เรามาทำความเข้าใจแนวคิดนี้อย่างละเอียด

light clientควรสามารถยืนยันว่าบล็อกได้รับการยอมรับจากผู้ตรวจสอบความถูกต้องส่วนใหญ่ (มากกว่า 67%) โดยไม่ต้องดาวน์โหลดข้อมูลบล็อกเชื่อมต่อไปกับบล็อกเชนทั้งหมด อย่างไรก็ตาม การยืนยันว่าผู้ตรวจสอบความถูกต้องแต่ละคนได้ลงลายมือเพื่อผ่านการยืนยันนี้ยากและเมื่อจำนวนผู้ตรวจสอบความถูกต้องเพิ่มขึ้นเรื่อย ๆ มันกลับกลายเป็นเรื่องที่เป็นไปไม่ได้เกือบทั้งหมด

ในเรื่องนี้ Celestia ได้คิดค้นแนวคิดที่น่าสนใจ ใน Celestia แม้ว่าผู้ตรวจสอบความถูกต้องส่วนใหญ่จะเป็นอันตราย แต่ก็เสนอวิธีการที่ช่วยให้โหนดเต็มซื่อสัตย์เดียวเพื่อแจ้งให้ไคลเอนต์แสงทราบว่าบล็อกที่มีข้อบกพร่องถูกปฏิเสธ ความซื่อสัตย์สุจริตเพียงครั้งเดียวนี้สามารถรับประกันได้ว่า "ซื่อสัตย์" โดยหลักฐานการฉ้อโกง

ใน Celestia มี fraud proof อยู่ 2 ประเภท:

  • ยังไม่มีการแปล

เป็นไปตามขั้นตอนการทำงานของการพิสูจน์การทุจริตของข้อมูลดังนี้: Celestia อนุญาตให้โหนดเบาทำการตรวจสอบได้โดยไม่ต้องดาวน์โหลดข้อมูลทั้งหมดในบล็อกโดยตรงเพื่อตรวจสอบว่าผู้ตรวจสอบความถูกต้องมีข้อมูลที่ถูกต้องหรือไม่ ในการทำให้สามารถทำได้นี้, Celestia ใช้เทคโนโลยีที่เรียกว่าการสุ่มความพร้อมของข้อมูล (Data Availability Sampling, DAS)

การสุ่มตัวอย่างความพร้อมใช้งานของข้อมูลของ Celestia | ที่มา: เอกสาร Celestia

ผู้ตรวจสอบความถูกต้องของ Celestia จะทำการย่อยส่วนข้อมูลธุรกรรมให้เป็นโครงสร้างของเมทริกซ์ขนาด k x k จากนั้นจะขยายขนาดเป็นเมทริกซ์ขนาด 2k x 2k โดยใช้เทคโนโลยีที่เรียกว่า 2D Reed-Solomon จากนั้นจะคำนวณ Merkle Root ทั้งหมด 4k ตัว โดยแยกตามแถวและคอลัมน์ และนำผลการแฮชของ Merkle Root เหล่านี้มาใส่ในส่วนหัวของบล็อกและแพร่กระจาย

ด้วยข้อมูล Merkle Root ในส่วนหัวของบล็อกเท่านั้น light node จึงสามารถยืนยันได้ว่าผู้ตรวจสอบความถูกต้องของ Celestia มีข้อมูลที่ถูกต้องหรือไม่ light node จะขอข้อมูลจุดสุ่มจากเมทริกซ์ขนาด 2k x 2k พร้อมทั้งข้อมูล Merkle Root ของแถวและคอลัมน์ที่เกี่ยวข้องจากผู้ตรวจสอบความถูกต้อง หากสามารถยืนยันได้ว่าข้อมูลเหล่านี้สอดคล้องกับค่าในส่วนหัวของบล็อก จะสามารถเชื่อถือได้ว่าผู้ตรวจสอบความถูกต้องมีข้อมูลที่ถูกต้อง

อย่างไรก็ตามมีการพิจารณาที่สําคัญเกิดขึ้น: จะเกิดอะไรขึ้นถ้าผู้ตรวจสอบความถูกต้องดําเนินการเข้ารหัส Reed-Solomon อย่างประสงค์ร้าย? Celestia แก้ปัญหานี้โดยใช้กลไกที่เรียกว่า "การพิสูจน์การฉ้อโกงการเข้ารหัสที่ไม่ดี" หากพบว่า Celestia's full โหนด ถูกเข้ารหัสอย่างไม่ถูกต้องในระหว่างกระบวนการกู้คืนบล็อก จะสร้างหลักฐานการฉ้อโกงที่มีความสูงของบล็อก ชิ้นส่วนที่เข้ารหัสไม่ถูกต้อง และหลักฐานความผิดพลาด และเผยแพร่ไปยังโหนดแสง ตรวจสอบหลักฐานเบา ๆ เพื่อยืนยันว่าข้อมูลถูกเข้ารหัสอย่างไม่ถูกต้องจริง ๆ จึงหยุดการใช้ข้อมูลที่ไม่ถูกต้อง

นอกจากนี้ Celestia ยัง提นบประการของการเปลี่ยนสถานะ proof ฉ้อโกง

สถาปัตยกรรมของบล็อก Celestia | Grundfos ที่มา: [Contribution DAO Blog] (https://mirror.xyz/contributiondaoblog.eth/_VknA2qiU0AF2aHcfCRxNjNQ2zLgOOWDnDXjs7fQR1o)

โครงสร้างบล็อกของ Celestia ประกอบด้วยข้อมูลการติดตามธุรกรรมในช่วงเวลาที่แตกต่างกัน นี้ช่วยให้โหนดเต็มสามารถสร้าง fraud proof ได้อย่างง่ายดาย ในขณะที่โหนดเบาสามารถตรวจสอบการเปลี่ยนสถานะที่ไม่ถูกต้องโดยไม่ต้องดำเนินการบล็อกทั้งหมด อย่างไรก็ตาม ด้วยปัญหาความซับซ้อน กลไกนี้ยังไม่ได้ถูกใช้งานใน Celestia Mainnet

โดยสรุปหลักฐานการทุจริตในชั้นความพร้อมใช้งานของข้อมูลสามารถกรองข้อมูลที่ไม่ถูกต้องและการเปลี่ยนสถานะโดยไม่ต้องพึ่งพาฉันทามติ

  1. เรียนรู้ของเครื่อง ปี 2024 ปีนี้เป็นปีที่ประเด็นสำคัญของประเด็น การเชื่อมต่อบล็อกเชนกับการเรียนรู้ของเครื่อง มีการวิจัยอย่างมากในคุณลักษณะนี้

การนำการเรียนรู้ของเครื่องมาใช้ในบล็อกเชนมีเหตุผลหลักดังนี้:

  • ความเชื่อถือได้ของข้อมูล:บล็อกเชนจัดการข้อมูลด้วยการกระจายอำนาจ ทุกธุรกรรมถูกบันทึกโดยเปิดเผยและโปร่งใส หากโมเดลเรียนรู้จากข้อมูลบล็อกเชน แหล่งข้อมูลจะเชื่อถือได้ ลดโอกาสการปลอมแปลง
  • ความโปร่งใสและสามารถที่ตรวจสอบได้ของโมเดล:เมื่อโมเดลเรียนรู้ของเครื่องทำงานบนบล็อกon-chain 01928374656574839201 การอัปเดตของโมเดลและผลลัพธ์จะถูกบันทึกบน on-chain ทำให้สามารถที่จะตรวจสอบได้ สิ่งนี้จะป้องกันการประกอบกับผลลัพธ์หรือความลำบากที่อาจเกิดขึ้นในสภาพแวดล้อมที่มีการจัดกลุ่มที่ศูนย์กลางได้

ปัจจัยสำคัญที่นี่คือการตรวจสอบว่าโมเดลเรียนรู้ของเครื่องถูกฝึกอบรมอย่างถูกต้องหรือไม่ อย่างไรก็ตาม การคำนวณเชิงเครื่องเรียนรู้เป็นอย่างมาก ซึ่งทำให้เป็นสิ่งที่เกือบเป็นไปไม่ได้ที่จะดำเนินการคำนวณเหล่านี้ในสภาวะการทำงานของบล็อกเชิงโภคภัณฑ์ ดังนั้น กลไกเช่น opML และ zkML ถูกสร้างขึ้นเพื่อตรวจสอบโมเดลเรียนรู้ในสภาพแวดล้อมบล็อกเชิงโภคภัณฑ์อย่างมีประสิทธิภาพ opML ใช้วิธีการแสดงที่ดีในการฝึกโมเดลและบันทึกผลลัพธ์ในบล็อกเชิงโภคภัณฑ์ และแก้ไขข้อผิดพลาดผ่านกลไกการสั่งโจทย์

ให้เรามองอย่างละเอียดขึ้นว่าวิธีนี้ที่ ORA นำเสนอ ORA คือโครงการที่ให้พื้นฐานเทคโนโลยีปัญญาประดิษฐ์บนบล็อกเชน กระบวนการท้าทาย opML คล้ายกับการท้าทาย rollup มีส่วนประกอบสำคัญทั้งสิบสามประการดังต่อไปนี้

  • fraud proofเครื่องจำลอง(Fraud Proof VM):เครื่องจำลองนี้เป็นเครื่องจำลองที่ทำการสร้างสถานการณ์การทำธุรกรรมที่เกิดขึ้นในโลกจริงและเป็นที่พิสูจน์ว่าไม่มีการฉ้อโกงเครื่องจำลอง:เครื่องจำลองนี้เป็นเครื่องจำลองที่มีการทำงานเหมือนกับ WAVM ของ Arbitrum หรือ Cannon ของ Optimism เพื่อทำการคำนวณเมื่อมีการทำธุรกรรมในเครือข่าย
  • opML สัญญาอัจฉริยะ:สัญญานี้ใช้สำหรับการตรวจสอบข้อพิสูจน์การฉ้อโกง ซึ่งมีประโยชน์เช่นเดียวกับสัญญา MIPS.sol ของ Optimism.
  • เกมการยืนยัน:ผู้ตรวจสอบความถูกต้องที่ได้เริ่มเรียนรู้เครื่องจำลองผ่านการแลกเปลี่ยนด้วยวิธีการแบ่งครึ่ง โดยจะจัดการขั้นตอนผิดพลาดเดียวกันในเครื่องจำลองแล้วสร้างข้อมูลการสอบสวนในรูปแบบ fraud proof สำหรับขั้นตอนนั้นๆ แล้วส่งมอบให้กับสัญญา opML

เกมตรวจสอบความถูกต้องบน ORA opML | ORA ที่มา: [เอกสาร ORA] (https://docs.ora.io/doc/technology/proving-frameworks-zkml-opml-opp-ai/opml)

โดยการใช้กลไก proof proof นี้,opML ใช้ความปลอดภัยและความน่าเชื่อถือของบล็อกเชนพร้อมกับสภาพแวดล้อมที่มีความคุ้มค่าสำหรับการฝึกฝนและการตรวจสอบโมเดลเรียนรู้ของเครื่องให้มีความคุ้มค่า

6. สรุป

Optimistic Rollup กําลังใช้ความพยายามอย่างมากในการปรับปรุงหลักฐานการฉ้อโกงและตั้งคําถามกับโปรโตคอลเพื่อสืบทอดความปลอดภัยของ Ethereum มากขึ้นและสร้างห่วงโซ่ที่มีความไว้วางใจน้อยลง Arbitrum คาดว่าจะถึงระยะที่ 2 ผ่าน BoLD ภายในสิ้นปีนี้, และ Optimism ยังทํางานไปสู่ระยะที่ 2, อาศัยเกม V2 ที่ถกเถียงกันและกลไกหลายหลักฐาน. ภายในปีหน้าผู้ใช้ Optimistic Rollup จะสามารถโต้ตอบกับเครือข่ายด้วยความปลอดภัยที่มากขึ้นโดยไม่ต้องกังวลว่า "Rollup อาจใช้เงินของพวกเขา" นอกจากนี้ Vitalik ยังกล่าวถึงในบล็อกของเขาว่าจํานวนการยกเลิกในระยะที่ 1 ขึ้นไปคาดว่าจะเพิ่มขึ้นเช่นกัน

แต่ทุกโปรโตคอลยังมีพื้นที่ในการปรับปรุง มีหลายด้านที่สามารถเสริมความแข็งแกร่งได้ด้วยการกระจายอำนาจ ZK Fraud Proof Kroma ได้ทำการก้าวไปข้างหน้าด้วยโปรโตคอลนี้ และโปรโตคอลอื่น ๆ เช่น Arbitrum, Optimism และ Cartesi ยังสามารถใช้ ZK fraud proof เพื่อความปลอดภัยและการกระจายอำนาจที่เพิ่มขึ้นได้อีกด้วย

ในด้านการพิสูจน์การทุจริตนี้ ไม่เพียงแค่ Rollup เท่านั้น แต่ยังรวมถึงโปรโตคอลอื่น ๆ ที่กำลังลงทุนในการวิจัยอย่างหลากหลาย ภายใต้เงื่อนไข 'ต้องการผู้เข้าร่วมที่ซื่อสัตย์เพียงคนเดียว' การพิสูจน์การทุจริตร่วมกับ ZK สามารถช่วยสร้างโครงสร้างบล็อกเชนที่มีความเชื่อมั่นสุดเหนือธรรมชาติ ผลกระทบจะเป็นจริงและเกี่ยวข้องต่อเราเองในอนาคต

7. อ้างอิง

(https://l2beat.com/scaling/summary)[L2Beat]

[การทุจริตพิสูจน์สงคราม |.] Luca Donnoh ที่ L2Beat](https://medium.com/l2beat/fraud-proof-wars-b0cb4d0f452a)

[ไฟล์ Arbitrum] (https://docs.arbitrum.io/how-arbitrum-works/bold/gentle-introduction)

[บทความมองโลกในแง่ดี] (https://docs.optimism.io/)

[สเปค การมองโลกในแง่ดี] (https://specs.optimism.io/fault-proof/index.html)

ไม่มีสิทธิ์ในการตัดสินในการแข่งขัน | Cartesi

[สเปค Kroma] (https://specs.kroma.network/experimental/zk-fault-dipute-game/overview.html)

BoLD:การแก้ข้อข้อร้องอย่างรวดเร็วและมีต้นทุนต่ำ

[เศรษฐศาสตร์ของ BoLD] (https://github.com/OffchainLabs/bold/blob/main/docs/research-specs/Economics.pdf)

ทำไมรอบ Rollup ในลักษณะที่เต้องการมีระยะเวลาท้าทายเป็น 7 วัน? | Kelvin Fichter ที่ OP Labs

[หลักฐานการทุจริตล้มเหลว |.] Gabriel Coutinho de Paula ที่ Cartesi](https://ethresear.ch/t/fraud-proofs-are-broken/19234)

การเดินทางในเวลาที่เต็มไปด้วยความสุข | Yoav Weiss

[รู้เบื้องต้นเกี่ยวกับความท้าทายที่ประสบความสําเร็จครั้งแรกของ Kroma's Mainnet] (https://blog.kroma.network/about-the-first-successful-challenge-on-kroma-mainnet-aeca715b05d7)

[การตีความความคืบหน้าของการกระจายอํานาจพื้นฐาน |.] OP Labs](https://blog.oplabs.co/unpacking-progress-in-baseline-decentralization/)

การโจมตีการเซ็นเซอร์ที่ไม่สามารถสืบทอดเกี่ยวกับโปรโตคอลชั้น 2 ที่ขึ้นอยู่บนการพิสูจน์การฉ้อโกง

[กรอบการตรวจสอบ OP Labs] (https://gov.optimism.io/t/op-labs-audit-framework-when-to-get-external-security-review-and-how-to-prepare-for-it/6864)

[ที่มาที่ไม่น่าไว้วางใจ |.] โครมา](https://www.notion.so/Complete-Trust-less-Derivation-for-Zero-Knowledge-Dispute-Game-bfaebd36375d48169424064237986dea?pvs=4)

[แนะนํา OP Succinct: Full Proof of Validity on OP Stack |.] รวบรัด](https://blog.succinct.xyz/op-succinct/)

[Eigenlayer GitHub] (https://github.com/Layr-Labs/eigenlayer-contracts/blob/d3730b5dd1b94d5e676e0c7a00a031574263c2c3/docs/experimental/AVS-Guide.md)

[ไฟล์ Celestia] (https://docs.celestia.org/)

[สนับสนุนบล็อก DAO] (https://mirror.xyz/contributiondaoblog.eth/_VknA2qiU0AF2aHcfCRxNjNQ2zLgOOWDnDXjs7fQR1o)

[เอกสาร ORA] (https://docs.ora.io/doc/technology/proving-frameworks-zkml-opml-opp-ai/opml)

ประกาศ:

  1. บทความนี้เป็นการเผยแพร่อย่างไม่เป็นทางการจาก [research.2077] ทุกสิทธิ์ต่อเจ้าของต้นฉบับ [sm-stack และ BTC Penguin] หากมีเรื่องร้องเรียนในการเผยแพร่ครั้งนี้ โปรดติดต่อทีม Gate Learn เพื่อดำเนินการให้ทันที
  2. คำชี้แจงความรับผิด: มุมมองและความเห็นที่แสดงในบทความนี้เป็นเพียงมุมมองส่วนบุคคลของผู้เขียนเท่านั้น ไม่เกิดเป็นคำแนะนำในการลงทุนใด ๆ
  3. ทีม Gate Learn แปลบทความเป็นภาษาอื่น ๆ ห้ามคัดลอก แจกจ่ายหรือลอกเลียนแบบบทความแปลยกเว้นระบุไว้เป็นอย่างอื่น
ดูต้นฉบับ
  • รางวัล
  • 2
  • แชร์
แสดงความคิดเห็น
ไม่มีความคิดเห็น